win api
文章平均质量分 65
tg5156
这个作者很懒,什么都没留下…
展开
-
WM_PAINT
<br /> 在呼叫InvalidateRect之后,Windows将WM_PAINT消息放入消息队列中,最后由窗口消息处理程序处理它。然而,Windows将WM_PAINT消息当成低优先级消息,如果系统有许多其它的动作正在发生,那么也许会让您等待一会儿工夫。这时,当对话框消失时,将会出现一些空白的“洞”,程序仍然等待更新它的窗口。<br /> 如果您希望立即更新无效区域,可以在呼叫InvalidateRect之后呼叫UpdateWindow。<br /> 如果显示区域的任一部分无效,则UpdateW原创 2010-07-07 23:20:00 · 671 阅读 · 0 评论 -
Win32 线程的事件使用
HANDLE WINAPI CreateEvent( LPSECURITY_ATTRIBUTES lpEventAttributes, BOOL bManualReset, // TRUE = 手动复位,FALSE = 自动复位 BOOL bInitialSt原创 2011-08-01 16:11:33 · 774 阅读 · 0 评论 -
OPENFILENAME示例代码
OPENFILENAME结构参考MSDN。HANDLE OpenDataFile(HWND hWnd){ OPENFILENAME ofn; HANDLE hFile; char szFileName[MAX_PATH]; strcpy(szFi原创 2011-08-01 14:09:40 · 792 阅读 · 0 评论 -
hostent h_addr_list
struct hostent { char FAR * h_name; /* official name of host */ char FAR * FAR * h_aliases; /*原创 2011-07-06 14:15:01 · 9506 阅读 · 5 评论 -
《Windows程序设计》第5章
<br />换算因子:xViewExt/xWinExt<br />MM_ISOTROPIC<br />将映像方式设定为MM_ISOTROPIC时,Windows使用与MM_LOMETRIC同样的窗口和视端口范围。<br />MM_ISOTROPIC模式下的SetViewportExtEx函数中,Windows将自动调整x与y的值,以确保X轴与Y轴逻辑坐标单位相同。Windows不会调整SetWindowExtEx。<br />逻辑坐标单位为1/16英寸:<br />SetMapMode(hdc, MM_IS原创 2011-05-18 14:30:00 · 508 阅读 · 0 评论 -
用Win32实现类似MFC中Draw3dRect函数的功能
<br />void FillSolidRect(HDC hdc, int x, int y, int cx, int cy, COLORREF clr)<br />{<br /> RECT rect;<br /> SetBkColor(hdc, clr);<br /> rect.left = x;<br /> rect.top = y;<br /> rect.right = x + cx;<br /> rect.bottom = y + cy;<br /> ExtTextOut(hdc, 0转载 2011-01-27 17:08:00 · 3370 阅读 · 0 评论 -
hbrBackground = (HBRUSH)(COLOR_WINDOW+1), what is +1 for ???
<br />The first COLOR_* value defined is COLOR_SCROLLBAR with the value 0 (see Winuser.h). If you didn't add one you wouldn't be able to differentiate between COLOR_SCROLLBAR and a NULL HBRUSH.<br />If you remove the +1 and only specify COLOR_WINDOW (5) yo转载 2010-11-16 12:23:00 · 2471 阅读 · 0 评论 -
《Windows程序设计》第4章
<br /> 在处理WM_PAINT消息期间,窗口过程在调用了BeginPaint()之后,整个客户区即变得有效。程序也可以调用ValidateRect()使客户区内的任意矩形区域变为有效。如是调用该函数使得整个客户区全部变为有效,则当前消息队列中的所有WM_PAINT消息都会被删除。<br /> 在处理WM_PAINT消息时必须成对调用BeginPaint()和EndPaint()。如果窗口过程不处理WM_PAINT消息,则必须将WM_PAINT消息传递给DefWindowProc()。该项函数依次调转载 2010-12-22 01:19:00 · 463 阅读 · 0 评论 -
PRINTDLG
<br />typedef struct tagPD{<br />DWORD lStructSize;<br />HWND hwndOwner;<br />HGLOBAL hDevMode;<br />HGLOBAL hDevNames;<br />HDC hDC;<br />DWORD Flags;<br />WORD nFromPage;<br />WORD nToPage;<br />WORD nMinPage;<br />WORD nMaxPage;<br />WORD nCopies;<br />转载 2010-07-18 01:50:00 · 2830 阅读 · 0 评论 -
进程与线程
<br /> 一个应用程序包含一个进程,进程包含一个线程。在执行过程中,应用程序可以创建其他进程(构成一个多进程网络),一个进程可以创建其他线程(构成一个多线程进程)。<br /> 进程是一个装入在内存中并且能够运行的程序。每一个进程都有它自己的虚拟地址空间,用来从EXE和DLL文件中装入数据和代码。一个进程拥有系统资源(比如文件和动态分配内存)和私有资源(比如线程和临界区),在一个进程运行过程中创建的资源随着进程的终止而被破坏,系统资源在进程终止时被释放或关闭。<br /> 线程是代码执行的基本单位转载 2010-07-15 00:19:00 · 554 阅读 · 0 评论 -
PROCESS_INFORMATION
<br />typedef struct _PROCESS_INFORMATION {<br />HANDLE hProcess; // 存放每个对象的与进程相关的句柄<br />HANDLE hThread; // 返回的线程句柄<br />DWORD dwProcessId; // 用来存放进程ID号<br />DWORD dwThreadId; // 用来存放线程ID号<br />} PROCESS_INFORMATION, *PPROCESS_INFORMATION, *LPPROCESS_INFO转载 2010-07-15 00:52:00 · 4569 阅读 · 0 评论 -
main与WinMain命令行参数提取
<br /> int main(int argc, char *argv[])<br /> argc是外部命令参数的个数,argv[]存放各参数的内容。argc >= 1,argv[0]存放程序文件本身。<br /> int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int nShowCmd)<br /> szCmdLine = "123.txt 65";<br /> char szCo原创 2010-07-07 23:36:00 · 3301 阅读 · 0 评论 -
WM_CLOSE
<br /> WM_CLOSE消息与DefWindowProc收到WM_SYSCOMMAND消息,且wParam等于SC_COLSE时发送给窗口过程的消息相同。<br /> 如果在一个Windows程序的系统菜单图标上双击一下,那么程序将会终止。双击产生一系列的WM_NCHITTEST消息。由于鼠标定位在系统菜单图标上,因此DefWindowProc将返回HTSYSMENU的值,并且Windows把wParam等于HTSYSMENU的WM_NCLBUTTONDBLCLK消息放在消息队列中。<br />原创 2010-07-07 23:18:00 · 7501 阅读 · 1 评论 -
关于Platform SDK和Windows SDK
原文地址:http://www.cnblogs.com/holynn/archive/2009/04/29/1446498.html问题1:什么是Windows SDK?Windows SDK是用来支持32位和64位Windows平台以及.NET框架编程模型的开发包。Windows SDK这个名字从Windows Vista开始使用,它包含以前Platform SDK中的所有内容,同时包含转载 2012-07-16 12:18:16 · 501 阅读 · 0 评论