摘要:
一、信息的存储单位 位(bit):度量数据的最小单位,表示1位二进制信息; 字节(Byte):一个字节由8位二进制数据组成;字节是信息存储中最常用的基本单位,计算机的存储器(包括内存与外存)通常也是以多少字节来表示它的容量; 1Byte=8bit 1K=1024B 1M=1024K 1G=1024M 阅读全文
摘要:
1、创建键 RegCreateKeyEx函数将创建指定的注册表项,如果这个表项已经存在,则打开该表项; LONG RegCreateKey( HKEY hKey, LPCTSTR lpSubKey, PHKEY phkResult ); hKey:指向当前打开表项的句柄,或是下列预定义的保留句柄值之 阅读全文
摘要:
1、文件的打开 FILE *fopen( const char *filename, const char *mode ); filename:指向文件名字符串的常量指针,表明将要打开的文件 mode:文件打开模式,包括: r --为读取而打开,如果文件不存在或不能找到,函数调用失败; w --为写 阅读全文
摘要:
const char* --指向常量的指针 (注意:const在char的前面或后面都是一样的额,主要关注是const在“*”的前面) 例: char ch[5]="lisi"; //字符数组的元素为5,包含"\0" const char* pStr=ch; *pStr='w'; //error p 阅读全文
摘要:
一、概述 阅读全文
摘要:
一、概述 “是MFC的”意味着可以在这种DLL的内部调用MFC类库中的内容;“是规则的”意味着它不同于MFC扩展DLL,在MFC规则DLL的内部虽然可以调用MFC类库,但是其与应用程序的接口不能是MFC,而MFC扩展DLL与应用程序的接口可以是MFC,可以从MFC扩展DLL中导出一个MFC类的派生类 阅读全文
摘要:
一、C语言动态库 1、创建C语言动态库,并封装函数: 1)创建新工程:Win32 Dynamic-Link Library 2)添加SourceFiles文件:Cdll.c Cdll.c中的内容: 3)编译、链接 注意:调用动态库中的函数时,须执行函数导出,库函数的导出有两种方法: ①方法一:用_d 阅读全文
摘要:
一、C语言静态库 1、创建C语言静态库,并封装函数: 1)创建新工程:Win32 Static Library 2)添加SourceFiles文件:Clib.c Clib.c中的内容: 3)编译、链接 在当前工程的Debug文件夹下生成Clib.lib文件 将生成的Clib.lib文件统一放置于工作 阅读全文
摘要:
一、库的分类: 静态库:库中代码被嵌入到可执行程序或动态库中,扩展名为“.lib” 动态库:库中代码不被嵌入到可执行程序或其它动态库中,只在运行时加载,扩展名为“.dll” 简介: 1)由于静态库是将代码嵌入到使用程序中,多个程序使用时,会有多份代码,所以代码体积会增大,但是程序运行效率较高。动态库 阅读全文
摘要:
一、安装钩子过程 HHOOK SetWindowsHookEx( int idHook, HOOKPROC lpfn, HINSTANCE hMod, DWORD dwThreadId ); idHook:指定将要安装的钩子过程的类型,包括: WH_CALLWNDPROC --在操作系统将消息发送到 阅读全文
摘要:
邮槽是基于广播通信体系设计出来的,采用无连接的不可靠的数据传输;邮槽是一种一对一或一对多的单向通信机制,创建邮槽的服务器进程读取数据,打开邮槽的客户机进程写入数据;为保证邮槽在各种Windows平台下都能正常工作,在传输消息时应将消息的长度限制在424字节以下; 1、创建邮槽 HANDLE Crea 阅读全文
摘要:
命名管道屏蔽了底层的网络协议细节,在不了解网络协议的情况下也可以利用命名管道来实现进程间通信;命名管道不仅可以在本机上实现两个进程间的通信,还可以跨网络实现两个进程间的通信; 1、创建命名管道 HANDLE CreateNamedPipe( LPCTSTR lpName, DWORD dwOpenM 阅读全文
摘要:
匿名管道是一个未命名的、单向管道,通常用来在一个父进程和一个子进程之间传输数据;匿名管道只能实现本地机器上两个进程间的通信,而不能实现跨网络的通信; 1、创建匿名管道 BOOL CreatePipe( PHANDLE hReadPipe, PHANDLE hWritePipe, LPSECURITY 阅读全文
摘要:
剪贴板实际上是系统维护管理的一块内存区域,当在一个进程中复制数据时,是将这个数据放到该块内存区域中,当在另一个进程中粘贴数据时,是从该块内存区域中取出数据,然后显示在窗口上;因为剪贴板是所有进程都可以访问的,如果某程序已经打开了剪贴板,则其他程序将不能修改剪贴板,直到前者调用了CloseClipbo 阅读全文
摘要:
BYTE unsigned char WORD unsigned short DWORD unsigned long 一、int < > CString int转CString: int i=100; CString str=""; str.Format("%d",i); CString转int: 阅读全文
摘要:
利用定时器和可在窗口创建完成后修改其窗口图标的SetClassLong函数,在程序中每隔一定时间就调用一次这个函数,让窗口图标循环显示预先准备好的一组图标中的下一个图标,就可实现图标不断变化的动画效果; 1、加载图标资源 在程序的资源窗口中,插入/引入新的一组图标资源 在程序的框架类CMainFra 阅读全文
摘要:
在应用程序框架类中只能修改程序窗口的图标,在视图类中才能改变应用程序窗口的背景和光标; 1、在窗口创建之前修改 方法一: 编写自己窗口类并注册,然后让随后的窗口按照我们自己编写的窗口类去创建;在程序的框架类CMainFrame类的PreCreateWindow函数中实现: 运行发现仅修改了应用程序的 阅读全文
摘要:
1、在窗口创建之前修改 须在程序的框架类CMainFrame类的PreCreateWindow虚函数中进行: 2、在窗口创建之后修改 可在程序的框架类CMainFrame类的OnCreate函数中实现: 阅读全文