1.MSG结构 hwnd:窗口句柄 message:消息类型 wParam & lParam:消息的附加信息(比如键值) time:消息被投递的时间 tip:typedef的作用是从变量类型区分变量用途 2.WinMain 3.程序开发步骤 4.设计窗口类 5.创建窗口.显示窗口.更新窗口 6.回调函数 tip:BeginPaint.EndPaint只能在响应WM_PAINT消息中使用,而GetDC不能在这里使用 tip:if语句中如果是常量与变量比较是否相等,应该把常量写在左边(可以避免把==…
1.MFC中WinMain函数的位置在APPMODUL.cpp APPMODUL.cpp中是_tWinMain,其实_tWinMain是一个宏#define _tWinMain WinMain 2.全局变量(对象)的构造在入口函数之前 3.带有Afx前缀的函数是应用程序框架函数(Application Framework) 4.MFC程序运行过程 *1.产生全局对象 CNameApp类InitInstance函数,调用父类构造函数,做一些初始化工作并保存子类的指针 *2.进入WinMain函数…
1.指向常量的指针 2.指针常量 3.C语言对文件操作是在缓冲区,在缓冲区满或文件关闭时写入文件 读取相同 4.fflush刷新缓冲区,使缓冲区数据写入文件 5.fseek改变文件指针偏移量 6.stell获取文件指针当前位置 7.rewind重新放置文件指针到开始处 8.写入换行会变成两个字节(回车与换行) 9.读文件时,如果以二进制读入,换行符与回车是两个字符,如果以文本方式读入,换行符与回车是两个字符 10.二进制文件和文本文件 11.文本方式与二进制方式 12.写入与读取应该用同一种方式…
1.画线方法 *1.捕获鼠标按下和弹起消息,获取两个点 *2.消息响应,画线 2.在CMainFrame类中的鼠标左键事件得不到响应的原因是CNameView覆盖了CMainFrame 3.注释宏 4.画线方法 *1.HDC *2.CDC(MFC封装) *3.CClientDC(不用显式释放资源) *4.CWindowDC(可以画到非客户区) 5.画线步骤 *1.获取DC *2.MoveTo到原点 *3.LineTo到目标点 *4.释放DC 6.CPen 构造函数参数: 线类型PS_SOLID等…
1.OSI 2.TCP/IP与OSI对应关系 3.Socket 4.客户机/服务器模式 5.Windows Sockets 6.套接字类型 7.面向连接的socket编程 8.面向无连接的socket编程 9.WSAStartup加载套接字并且协商版本 10.MAKEWORD宏创建一个WORD 11.LOBYTE,HIBYTE分别取低字节与高字节 12.socket创建套接字 13.bind将一个本地地址与一个套接字关联起来 14.listen.accent监听,接受请求 15.send发送数据…
1.CArchive类保存内存数据 2.CAchive类重载了>>与<<操作符,类似C++文件流 3.在OnNewDocument中通过SetTitle设置标题 4.字符串资源中IDR_MAINFRAME的第二个子串是文档标题 5.在App类初始化函数中将标题传进去 6.GetDocString获取字符串资源值 7.IDR_MAINFRAME字符串资源含义: 8.Doc类中的Serialize是保存/加载数据的函数 9.保存后打开同一文件不会进入Serialize函数(MFC认为文…
1.HOOK拦截消息,设置越后的钩子优先级越高(钩子队列)2.SetWindowHookEx设置钩子    如果thread identifier为0或其他进程创建的线程,回调函数需要在动态链接库中声明3.CallNextHookEx调用下一个钩子4.UnhookWindowHookEx撤销一个钩子…
1.动态链接库 2.静态库和动态库 3.使用动态链接库的好处 4.动态链接库编译需要导出,使用需要导入 __declspec(dllexport),__declspec(dllimport) 5.动态链接库加载的方式 隐式:#pragma comment(lib, "../debug/dll1.lib") // 显示的声明要链接dll1.lib,隐式调用 显式:HMODULE hModule = ::LoadLibraryA("dll1.dll");…
18 1.容器和服务器程序 2.InvalidateControl重绘控件 3. 4.GetBackColor获取背景色 5.GetForeColor获取前景色 6.TranslateColor进行颜色转换…
17 1.进程间通信4种方式 2.OpenClipboard打开剪贴板 3.EmptyClipboard清空剪贴板,并把所有权分配给打开剪贴板的窗口 4.SetClipboardData设置剪贴板数据格式 5.GlobalAlloc从堆中分配内存 6.GlobalLock对全局内存对象加锁,返回内存指针 7.GlobalUnlock解锁内存对象 8.发送剪贴板步骤: OpenClipboard打开剪贴板 EmptyClipboard清空剪贴板 SetClipboardData设置数据类型 Glo…