
win32
null
这个作者很懒,什么都没留下…
展开
-
解决WIN32窗口不响应WM_LBUTTONDBLCLK消息
今天在做一个软件时,发现win32创建的窗体不能响应WM_LBUTTONDBLCLK消息。在一番谷歌百度之后,终于找到了解决方法;废话少说,言归正传。窗体不响应WM_LBUTTONDBLCLK消息,只要在注册窗口类的时候在WNDCLASS的style成员加上CS_DBLCLKS风格就行了。下面是几种CS风格:CS_HREDRAW:当窗体的宽度发生变化时,就重新绘制窗口。CS_VRE原创 2012-05-27 14:37:17 · 1297 阅读 · 0 评论 -
把位图保存为文件源代码
最近想写一个截图工具,就研究了一下位图的结构。下面代码是把位图以BMP文件的结构写入文件中的#include BOOL SaveBitmapToFile(LPCTSTR lpszFilePath, HBITMAP hBm){ // 定义位图文件表头 BITMAPFILEHEADER bmfh; // 定义位图信息表头 BITMAPINFOHEADER bmih;原创 2012-05-27 14:54:01 · 887 阅读 · 0 评论 -
一个简单的win32截图例子
该代码为把当前屏幕截图并保存为文件的代码。SaveBitmapToFile.cpp文件在我前面一章文章中:点此进入#include "SaveBitmapToFile.cpp"#include #define IDC_SAVE 1#define IDC_FILEPATH 2LRESULT CALLBACK WndProc(HWND hWnd, UINT mess原创 2012-05-27 14:59:58 · 1170 阅读 · 0 评论 -
BMP位图结构
BMP(Bitmap)文件是windows采用的图形文件格式。其可分为与设备相关的位图(device dependent bitmap 简称DDB)和与设备无关的位图(device independent bitmap 简称 DIB)两种;但现在基本上不用DDB了,因为它相当依赖于设备。在windows 3.0以前才使用,在windows3.0之后大多使用的都是DIB。位图文件一般以BMP为后缀名原创 2012-05-18 16:24:11 · 537 阅读 · 0 评论 -
进程间通讯 —— 共享内存
进程间通讯 —— 共享内存 通过内存共享的方式来进行进程之间的通讯,可以通过发送端进程在接收端进程中开辟一段内存空间,然后往该内存空间内写入数据,并通知接收端读取数据来达到。实现代码片段发送端:BOOL SendProcessMessage(){ HWND hWnd; hWnd = FindWindow(NULL, "Recv"); // 查找接收端窗口 i原创 2012-08-27 22:54:33 · 465 阅读 · 0 评论 -
CreateRemoteThread详解
要实现线程的远程注入必须使用Windows提供的CreateRemoteThread函数来创建一个远程线程该函数的原型如下:HANDLE CreateRemoteThread( HANDLE hProcess, LPSECURITY_ATTRIBUTES lpThreadAttributes, SIZE_T dwStackSize, LPTHREAD转载 2012-09-13 20:12:20 · 760 阅读 · 0 评论 -
详解模块定义(.def)文件
模块定义 (.def) 文件 模块定义 (.def) 文件为链接器提供有关被链接程序的导出、属性及其他方面的信息。生成 DLL 时,.def 文件最有用。由于存在可代替模块定义语句使用的链接器选项,通常不需要 .def 文件。也可以将__declspec(dllexport) 用作指定导出函数的手段。转载 2012-10-25 22:26:37 · 1063 阅读 · 0 评论 -
windows获取桌面句柄
昨晚上一位朋友问我如何获取桌面句柄,当时第一反应就是用GetDesktopWindow()来获取,但是这个函数获取的是覆盖整个屏幕的句柄,如果只获取桌面的句柄,则不能使用这个函数。通过Spy++发现,桌面其实是一个子窗口,其上面有两个父窗口 如图:这三个窗口都没有标题,它们的类名分别为:Progman、SHELLDLL_DefView和SysListView32;这就好办了,只需要原创 2012-12-15 15:03:03 · 6379 阅读 · 0 评论