- 博客(15)
- 资源 (6)
- 收藏
- 关注
原创 Dll的链接使用细节
关于DllDll,Exe 都是PE格式的二进制文件。Dll相当于Linux操作系统下的so文件1 基地址(Base Address)和相对地址(RelativeVirtual Address) 基地址(BaseAddress)和相对地址(Relative Virtual Address)是PE文件的概念,当PE文件被装载的时候,进程空间的起始地址就是基地址,这个值是PE
2014-08-31 23:37:16 1778
翻译 About Messages and Message Queues
目录:Windows MessagesMessage TypesSystem-Defined MessagesApplication-Defined MessagesMessage RoutingQueued MessagesNonqueued MessagesMessage HandlingMessage LoopWindow Pr
2014-08-27 08:33:45 1071
原创 云风博客中看到的一道数学题
今天在云风的博客中看到一道数学题,初衷是让用初等集合知识解决,就做了下,看似简单,但是很不爽,浪费了我一个小时我才找到方法。题目如下所示: 三角形 ABC 是一个等腰三角形,顶角 20 度。角 EBC 为 60 度,角 DCB 为 50 度。求角 DEB 是多少 度。解:过点E做BC的平行线交AB于点F;连接CF叫BE于点O。容易看到 ∠DBC = ∠BCD = 50°
2014-08-27 01:15:56 1972 3
原创 Windows 互斥对象在线程同步上的运用
互斥对象在线程同步时的使用1 多线程在资源共享的时候出现的问题 在程序中如果不同线程对同一个对象进行操作的话就有可能出现因为线程切换而导致的问题。例如下面的程序#include #include #include using namespace std;#pragma comment(lib,"ws2_32.lib") DWORD WINAPIfun1P
2014-08-25 22:26:58 2187
原创 基于UDP的MFC聊天程序设计
利用MFC创建基于UDP的聊天通信工具很简单,程序是基于MFC的对话框实现的。程序界面如下面所示:1 概述 要添加的内容主要主要是发送端和接受端程序,以及最开始对话框程序初始化的时候对套接字的初始化。以及自定义消息WM_RECVDATA2 接受线程 其次要注意的是因为接受函数recvfrom是一个阻塞函数,所以要开辟一个线程来专门接受消息。并且要把socket以及窗口句
2014-08-25 16:49:45 3831
原创 Winsock基础编程
Winsock编程 Socket的英文原义是“孔”或“插座”。作为BSD UNIX的进程通信机制,取后一种意思。通常也称作“套接字”,用于描述IP地址和端口,是一个通信链的句柄。在Internet上的主机一般运行了多个服务软件,同时提供几种服务。每种服务都打开一个Socket,并绑定到一个端口上,不同的端口对应于不同的服务。Socket正如其英文原意那样,像一个多孔插座。一台主
2014-08-23 00:09:44 2892
原创 MFC 之IDR_MARINFRAME字符串资源解析
IDR_FRAME 中有这样一个字符串,它由7部分构成,相邻子串之间以‘\n’分隔窗口标题\n文档名字\nSB\nCode Files(*.cpp)\n.cpp\nmfcArchive.Document\nmfcArchive.Document下面一个一个解释。1 窗口的标题2 表示文档名称3 文档模板的名称,如果一个APP中有多个可供选择的文档
2014-08-21 03:42:24 2071
原创 MFC 之支持串行化的类
MFC中可以串行化的类必须满足以下条件1 从CObject派生,或者间接派生2 重写Serialize函数3 使用DECLARE_SERIAL宏4 定义不带参数的构造函数5 在类的实现文件中用IMPLENT_SERIAL宏在绘图保存的程序中,类CPaints作为保存的基本单元,它里面存储了绘图类型,起始点,终止点三个成员变量。然后在绘图中每当绘制一幅图都会将CP
2014-08-21 03:04:00 907
原创 MFC File相关命令流程分析
一个APP可以有多个文档模板,一个文档模板可以有多个文档(Document),一个Document可以有多个View。在程序。要在程序中添加新的文档模板可以如下所示:CSingleDocTemplate*pDocTemplate; pDocTemplate = newCSingleDocTemplate( IDR_MAINFRAME,
2014-08-20 19:26:45 1874
原创 MFC消息映射机制
1 消息循环所在的函数CWinApp::Run2 消息类别Windows MessagesWM_XX前缀开头,但是除了WM_COMMAND消息外。Control Notifications包含来自控件或者子窗口发给父窗口的 WM_COMMAND的通知消息。Command Messages菜单,工具栏按钮,快捷键3 消息的发送和接受CWinApp
2014-08-20 15:15:38 834
翻译 Window Classes
每一个窗口类都有一个相关联的窗口过程,这个窗口过程是被同一个类的所有窗口所共享。窗口过程处理这个类的所有窗口的消息从而控制他们的行为和外观。 进程必须注册一个窗口类后才能创建一个窗口。注册窗口类用一个类名字关联到窗口过程,类风格,以及其他的类属性。当进程在CreateWindow或者CreateWindowEx中指定了一个类名的时候,系统就会创建一个窗口,其中窗口过程,风格,其
2014-08-16 16:48:40 2015
原创 C宏定义中的 #,##,#@
宏定义中会出现#xxx ,A###B,以及微软独自特有的#@xxx。分别解释。1 define SB(x) #x它的作用是把输入的东西转换为字符串string str = SB(123);2 define BB(x) UXX##x这个是个符号连接的作用,把UXX(随意的跟符号x连接成一个新的符号,这里说的符号就是变量的意思int BB(1);U1 = 1
2014-08-15 20:56:02 1972
原创 Windows 注册表
64位操作系统上的注册表文件系统重定向UAC注册表重定向SysWoW64注册表存放位置注册表跟环境变量 64位操作系统在64位的操作系统中有64位版本的注册表编辑器以及32版本的注册表编辑器,64版本的注册表在C:\Windows\regedit.exe,32位版本的在C:\Windows\SysWow64\regedit.exe。注册表中的内容主要分为系统
2014-08-14 19:45:32 1833
原创 windows注册表编程
Windows注册表1 注册表的作用 注册表在windows中非常重要,它是一个庞大的数据库,里面保存了大量的系统信息,例如保存软件硬件的配置信息,计算机系统的设置,性能记录。 如果注册表遭到破坏,就可能对整个系统造成影响,甚至系统瘫痪。2 注册表的结构注册表是树状的层次结构:主键-->子键-->子键-->子键-->……-->键值。其中每一个键都
2014-08-13 14:54:51 4638
原创 FormatMessage函数的用法
使用FormatMessage时如果对一些参数不仔细研究,那么就会出错误,首先说下这个函数1 函数描述DWORD WINAPI FormatMessage( _In_ DWORD dwFlags, _In_opt_ LPCVOID lpSource, _In_ DWORD dwMessageId, _In_ DWORD dwLanguageI
2014-08-12 18:05:21 1946
Win32对话框编程
2014-04-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人