- 博客(302)
- 资源 (13)
- 收藏
- 关注
原创 Visual Studio 2008 中程序路径配置
在调试 Visual Studio 2008 程序时,经常有一些动态链接库(即 dll 文件)需要加载到工程里,这样才能依赖第三方库进行程序调试。这些动态链接库,往往都是测试版本或是开发中的版本,或者会有若干个版本;这个时候,如果直接把 dll 所在目录加到 PATH 里,则会有潜在冲突的危险;如果直接拷贝到 Visual Studio 的目录下,假如测试工程太多,每次有新版本的动态链
2016-06-14 14:14:24
352
原创 获取网卡mac地址
#include "stdafx.h"#include//#include#include"iphlpapi.h"#pragma comment(lib,"Iphlpapi.lib")int _tmain(int argc, _TCHAR* argv[]){ PIP_ADAPTER_INFO pAdapterInfo; PIP_ADAPTER_INFO pAdapter=NULL
2015-11-18 17:49:29
606
原创 MySQL命令行导入导出数据库
Windows下MySQL命令行导出数据库:1、进入MySql目录下的bin文件夹2、导出数据库:mysqldump -u 用户名 -p 数据库名 > 导出的文件名,如下图所示输入密码即可导出数据库bank:导出的数据库bank1.sql在bin目录下可以找到。备注:用windows命令行窗口操作可以进行,但是用MySql自带的命令行窗口却操作失败,原因未知。3、如果只
2015-09-17 11:12:31
485
原创 使用phpmyadmin导入大数据的方法
1、在phpMyAdmin的目录下,找到根目录的config.inc.php文件,如下图:2、打开config.inc.php文件,查找$cfg['UploadDir'],这个参数就是设定导入文件存放的目录,这里把值设定为:ImportSQLFile。如下图3、在phpMyAdmin目录下,建立以ImportSQLFile命名的文件夹,如下图4、把我们需要导入的数据文件
2015-09-16 15:33:42
862
原创 visual studio 解决方案项目结构部署和配置
在实际的企业项目,一个解决方案里面由几个项目组成:产生静态或者动态链接库的项目、测试用例、产生执行文件的项目、当然还有一些开源的第三方库等。此时,我们需要对解决方案作一定的配置,使得解决方案结构清晰、层次分明,也便于项目维护和多人协作。一、VS中项目设置中使用的宏:SolutionDir --- 解决方案目录ProjectDir --- 项目目录ProjectName ---
2015-09-07 10:47:58
1460
转载 C++ 中通过GetAdaptersInfo获取网卡配置和Ip地址信息
一台机器上可能不只有一个网卡,但每一个网卡只有一个MAC地址,而每一个网卡可能配置有多个IP地址;如平常的笔记本电脑中,就会有无线网卡和有线网卡(网线接口)两种;因此,如果要获得本机所有网卡的IP和MAC地址信息,则必须顺序获得每个网卡,再依次获取其信息等;在windows sdk中,用IP_ADAPTER_INFO结构体存储网卡信息,包括网卡名、网卡描述、网卡MAC地址、网卡IP等,该结构体的主
2015-08-28 16:39:52
290
C++ 中通过GetAdaptersInfo获取网卡配置和Ip地址信息
一台机器上可能不只有一个网卡,但每一个网卡只有一个MAC地址,而每一个网卡可能配置有多个IP地址;如平常的笔记本电脑中,就会有无线网卡和有线网卡(网线接口)两种;因此,如果要获得本机所有网卡的IP和MAC地址信息,则必须顺序获得每个网卡,再依次获取其信息等;在windows sdk中,用IP_ADAPTER_INFO结构体存储网卡信息,包括网卡名、网卡描述、网卡MAC地址、网卡IP等,该结构体的主
2015-08-28 16:32:56
213
转载 AfxLoadLibrary 和 LoadLibrary的区别
For AfxLoadLibrary, and serving as the dll search rule: When no path is specified, the function searches for the file in the following sequence:The directory from which the application loaded.Th
2015-06-01 13:08:57
2990
原创 重载函数调用操作符
函数调用操作符? 函数调用操作符是(),因此此操作符的函数重载是operator()()。重载函数调用操作符的类对象称为函数对象或仿函数,因此我们可以像使用函数名一样使用对象名。先看一个简单的例子。重载了函数调用操作符的一个类:class Area{public: int operator()(int length, int width) { return len
2015-04-09 10:58:57
536
原创 如果动态的为本地C++类的成员分配空间,则必须实现复制构造函数--的说明
问题引出?1、定义如下的类:class CMessage{public: CMessage(const char *text = "Default Message.") { m_pMessage = new char[strlen(text)+1]; strcpy_s(m_pMessage, strlen(text)+1, text); } ~CMessage() {
2015-04-08 15:18:54
750
原创 C++ Explicit关键字详细解析
知道C++中有Explicit关键字,但对其用法和作用的理解有些模糊,今天有时间给系统的澄清一下: explicit关键字用来修饰类的构造函数,表明构造函数是显示的,相对的是implicit关键字。首先这个关键字只能用在类内部的构造函数声明上,而不能用在类外部的函数定义上,它的作用是不能进行隐式转换。用法代码如下:class CPerson{public: CPers
2015-04-08 11:50:01
382
原创 Socket编程总结!
一、套接字类型流式套接字SOCK_STREAM(基于TCP协议)数据报套接字SOCK_STREAM基于UDP协议)原始套接字SOCK_RAW(一般不常用)二、网络字节序不同的计算机存放字节的顺序不同,基于Intel的CPU,即我们常用的PC机采用的是低位先存。为了确保数据的正确性,在网络协议中需要指定网络字节顺序,TCP/IP协议使用16位整数和32位整数的高位先存格式。在网络中不
2015-04-01 17:17:22
772
原创 visual C++ 项目和解决方案的区别
项目: 项目是构成某个程序的全部组件的容器,该程序可能是控制台程序、基于窗口的程序或某种别的程序。程序通常由一个或多个包含用户代码的源文件,可能还要加上包含其它辅助数据的文件组成。某个项目的所有文件都存储在相应的项目文件夹中,关于该项目的详细信息存储在一个扩展名为.vcproj的xml文件中,该文件同样存储在相应的项目文件夹中。项目文件夹还包括其它文件夹,它们用来存储编译及链接项
2015-03-04 17:15:26
5472
转载 Source Insight 常用设置和快捷键大全
1.括号配对高亮:“在前括号左侧,后括号左侧” 双击鼠标左键,可以选定匹配括号和其中内容(2.让{ 和 } 不缩进:Options -> Document Options -> Auto Indenting -> Auto Indent Type 选 Simple还有:让{ 和 } 不缩进: options->document options->auto indent 去掉inde
2015-02-12 13:02:53
1523
原创 Centos与VirtualBox共享文件夹
环境:主机操作系统是Windows 7,虚拟机是CentOs,虚拟机是VirtualBox。1. 安装增强功能包(Guest Additions) 安装好CentOs5.5后,运行CentOs5.5并登录。然后在VirtualBox的菜单里选择"设备(Devices)" -> "安装增强功能(Install Guest Additions)"。你会发现在CentOs5.5桌面
2015-02-05 09:56:24
5084
原创 利用兼容DC绘图
1、创建位图CreateCompatibleBitmap()函数:该函数创建与指定的设备环境相关的设备兼容的位图CBitmap bitmap;bitmap.CreateCompatibleBitmap(pDC,m_rectView.Width(),m_rectView.Height());2、创建兼容DCCDC *m_pMemDC;CDC *pDC = GetDC
2014-08-08 11:48:15
986
原创 MFC中利用兼容DC在View中显示位图
1、创建位图CBitmap bitmap;bitmap.CreateCompatibleBitmap(pDC,m_rectView.Width(),m_rectView.Height());
2014-08-08 11:22:38
248
转载 理解Java虚拟机
我们都知道java程序必须在虚拟机上运行。那么虚拟机到底是什么呢?先看网上搜索到的比较靠谱的解释:虚拟机是一种抽象化的计算机,通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机有自己完善的硬体架构,如处理器、堆栈、寄存器等,还具有相应的指令系统。JVM屏蔽了与具体操作系统平台相关的信息,使得Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修
2014-06-17 10:37:11
783
原创 MySql常用命令总结-入门几个常用的命令
1、使用SHOW语句找出在服务器上当前存在什么数据库:mysql> SHOW DATABASES;2:2、创建一个数据库MYSQLDATAmysql> CREATE DATABASE MYSQLDATA;3:选择你所创建的数据库mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!)4:查看现在的数据库中存在什么表m
2014-06-05 10:16:23
435
原创 VC++ 用CMarkUp解析XML文件
1、获取CMark 首先到http://www.firstobject.com/下载CMarkup教学版,解压后里面是一个DEMO,将Markup.h .cpp拷贝并添加到工程中,第一次编译可能会出现预编译错误,解决的方法在Markup.cpp最前面include "stdafx.h",或者关闭预编译。
2014-06-03 16:17:33
1715
转载 Unicode utf8等编码类型的原理
1、ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串。每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte)。也就是说,一个字节一共可以用来表示256种不同的状态,每一个状态对应一个符号,就是256个符号,从0000000到11111111。上个世纪60年代,美国制定了一套字符编码,对英语字
2014-05-26 15:02:59
3236
3
原创 VC++6.0 用gSoap客户端访问WebService
1、安装gSOAP首先我们到 http://sourceforge.net/project/showfiles.php?group_id=52781 下载gSOAP下载工具集,不同的系统下用的gSOAP是不一样的,根据需要下载了windows下的和linux下的。gSOAP工具集不需要安装,直接解压就可以了。在/bin目录下我们可以看到两个可执行文件:soapcpp2.exe: gSO
2014-05-23 15:35:53
1227
转载 Installshield集成第三方安装包并使用脚本安装
要打包程序,老大让一天研究完,研究了一天Installshield,基本折腾会了。由于在安装过程中要不断的调用第三方程序安装驱动,所有要把第三方程序集成到安装包里。将需要安装的程序添加到【Behavior and logic】 -> 【Support Files】 -> 【Language Independent】中使用SUPPORTDIR获取路径,如:
2014-05-13 17:25:31
1911
转载 Installshield集成第三方安装包并使用脚本安装
要打包程序,老大让一天研究完,研究了一天Installshield,基本折腾会了。由于在安装过程中要不断的调用第三方程序安装驱动,所有要把第三方程序集成到安装包里。将需要安装的程序添加到【Behavior and logic】 -> 【Support Files】 -> 【Language Independent】中使用SUPPORTDIR获取路径,如:
2014-05-13 17:21:56
654
转载 eclipse-以指定颜色高亮显示选中关键字
让eclipse中选中的变量以指定颜色高亮显示Window->Preferences->General->Editors->Annotations->Occurrencesandroid下eclipse中的Logcat 查看system.out.print()输出设置菜单:Window-->show view-->other-->找到Android,选择Logcat。
2014-02-11 11:53:44
2825
转载 线程、线程句柄、线程ID的关系
什么是句柄: 句柄是一种指向指针的指针。我们知道,所谓指针是一种内存地址。应用程序启动后,组成这个程序的各对象是住留在内存的。如果简单地理解,似乎我们只要获知这个内存的首地址,那么就可以随时用这个地址访问对象。但是,如果您真的这样认为,那么您就大错特错了。我们知道,Windows是一个以虚拟内存为基础的操作系统。在这种系统环境下,Windows内存管理器经常在内存中来回移动对象,依此来满
2013-10-31 08:37:04
665
转载 AFX_MANAGE_STATE(AfxGetStaticModuleState())用法意义
AFX_MANAGE_STATE(AfxGetStaticModuleState()) 先看一个例子:1、创建一个动态链接到MFC DLL的规则DLL,其内部包含一个对话框资源。指定该对话框ID如下: #define IDD_DLL_DIALOG 20002、创建一个基于对话框的mfc应用程序,它包含两个对话框资源,ID
2013-07-27 22:48:01
536
转载 linux读取配置文件(C语言版)
#include #include #include #include #include #define KEYVALLEN 100 /* 删除左边的空格 */char * l_trim(char * szOutput, const char *szInput){ assert(szInput != NULL); assert(szOutput != NULL);
2013-07-22 15:28:45
794
转载 C语言的字符串分割
说起来很有意思,自认为对C语言理解得还是比较深刻的。但居然到今天才知道有个strtok函数,试用了一下突然感慨以前做了多少重复劳动。每次需要解析配置文件,每次需要分割字符串,居然都是自己去分割字符串,既累人又容易出错。感概继续学得不够全面啊!这里引用一段strtok用法:The strtok() function returns a pointer to the next "token"
2013-07-22 15:17:53
576
转载 C++内存池的概念及其实现
内存池(Memory Pool)是一种内存分配方式。 通常我们习惯直接使用new、malloc等API申请分配内存,这样做的缺点在于:由于所申请内存块的大小不定,当频繁使用时会造成大量的内存碎片并进而降低性能。 内存池则是在真正使用内存之前,先申请分配一定数量的、大小相等(一般情况下)的内存块留作备用。当有新的内存需求时,就从内存池中分出一部分内存块,若内存块不够再继续申请新的内存。这样
2013-05-10 16:09:47
618
转载 extern作用详解
extern 作用1:声明外部变量现代编译器一般采用按文件编译的方式,因此在编译时,各个文件中定义的全局变量时相互透明的,也就是说,在编译时,全局变量的可见区域限制在文件内部。例1:创建了一个工程,里面含有A.cpp和B.cpp两个简单的C++文件://A.cpp:int iRI;int main(){//.....}//B.cppint iRI;
2013-03-31 11:03:38
794
转载 C/C++常见面试题
1、const有什么用途?(1)限定符声明变量只能被读(2)必须初始化,否则导致编译错误,const常量有数据类型,而宏常量没有数据类型,编译器可以对前者进行类型安全检查,而对后者只能进行字符替换,并且在字符替换时可能发生意料不到的错误。const int i=5;//合法const int j;//非法,导致编译错误,没有初始化(3)在另一文件中引用const常量,只能被引用
2013-03-22 18:07:45
621
原创 给Android源码增加一个项目
所谓增加一个项目的意思是,增加一个子项目,以便于Android源码遍以后,编译目标中能够包含该项目。比如:可以增加一个C/C++工具程序,从而可以在目标系统的shell命令行下使用该工具。再比如,可增加一个apk程序,从而在该设备出厂时就自带该程序。 从编译中枢的角度来讲,增加项目就是告诉编译中枢一些信息,这些信息包括:这个项目的target名称是什么?这个项目的输出类型是什
2012-08-31 16:01:07
4965
转载 Android 源码下编译APK
有些时候,我们写的 app 需要获取系统的一些权限,比如获取联系人信息,Mail 信息等等,就需要在 android 源码下编译APK,让app与系统源码具有一样的签名。1、在源码目录下运行$ . build/envsetup.sh 目的是使mm/mmm命令可用2、修改 AndroidManifest.xml(非必须,除非app需要system ID) 添加: android:shared
2012-08-30 14:53:13
12728
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人