自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

jhb92的专栏

Win32 SDK乐园

  • 博客(23)
  • 资源 (1)
  • 收藏
  • 关注

原创 WM_VSCROLL/WM_HSCROLL

WM_VSCROLL nScrollCode = (int) LOWORD(wParam); // scroll bar value nPos = (short int) HIWORD(wParam);  // scroll box position hwndScrollBar = (HWND) lParam;      // handle to scroll bar 告诉我们用户对滚

2007-08-13 20:33:00 2992

翻译 Image list

Image ListsImage List 是同样大小的图片集合,每个图片通过索引引用。Image Lists 被用来高效管理大量图标和位图。在Image List中的所有图片被包含 单个,宽位图以screen device 格式。一个Image list同样可以包含单色位图,这些位图中包含掩码,被用来透明的绘画图片(icon style)。Using Image ListsImage L

2007-08-13 19:59:00 4345

原创 Toolbar笔记

对照源代码以下是部分解释,打字太累……^_^Toolbar(window containing buttons or other controls)创建Toolbar1.CreateToolbarEx(...,LPCTBBUTTON,iNumButton,...)  需要一个TBBUTTON结构数组,  其中TBBUTTON结构表示Toolbar上的每个按钮!  而按钮又是窗口,又有style

2007-08-13 19:57:00 1168

原创 滚动条处理笔记

提示:看看原代码会明白下面所说的!原代码处理滚动条时的问题:有了WS_VSCROLL后会出现滚动条,但是无法滚动,还没有键盘接口,也没有初始化滚动块的大小等等我们要做的事情是:1.要处理滚动消息2.移动滚动块到鼠标指定的位置3.并更新客户区的内容滚动消息:WM_VSCROLL nScrollCode = (int) LOWORD(wParam); // scroll bar value n

2007-08-13 19:20:00 835

原创 WM_CLOSE,WM_DESTROY接受顺序

WM_CLOSE 先于WM_DESTROY收到     case WM_CLOSE:                PostQuitMessage (0) ;                break;     case WM_DESTROY:               MessageBox(NULL,TEXT("123"),TEXT("123"),0);这样的话,Message

2007-08-11 17:33:00 1325

原创 WM_PAINT

WM_PAINT hdc = (HDC) wParam; // the device context to draw in当调用UpdateWindow,  RedrawWindow时,系统通过WM_PAINT来告诉我们哪个窗口需要绘画,画在那里(hdc)我们的处理(Message Cracker):void cls_OnPaint(HWND hwnd)...{  //do..

2007-08-11 17:06:00 757

原创 WM_COMMAND

WM_COMMAND wNotifyCode = HIWORD(wParam); // notification code wID = LOWORD(wParam);         // item, control, or accelerator identifier hwndCtl = (HWND) lParam;      // handle of control WM_COMM

2007-08-11 16:26:00 1063

原创 简单全屏程序

代码下载知识准备:WS_POPUP:不显示窗口客户区,只显示在任务栏上,不见窗口,右击任务栏上的窗口也没有系统菜单WS_SYSMENU:负责是否显示右击时的菜单WS_MAXIMIZEBOX:最大化按钮WS_MINIMIZEBOX:最大化按钮MoveWindow和SetWindowPos的区别:当从全屏回来时,如果使用SetWindowPos,那么原来被程序覆盖的部分不会更新!相同:同样可以改变

2007-08-11 14:36:00 841

原创 为你的程序加上加速键

1.添加加速键资源2.  hAccel =LoadAccelerators(hInstance,MAKEINTRESOURCE(IDR_ACCEL));3.修改消息循环以便处理加速键信息    while (GetMessage (&msg, NULL, 0, 0))     ...{        if(!TranslateAccelerator(hwnd,hAccel,&msg))  

2007-08-11 12:32:00 618

原创 WM_CREATE

WM_CREATE lpcs = (LPCREATESTRUCT) lParam; // structure with creation data typedef struct tagCREATESTRUCT ...{ // cs     LPVOID    lpCreateParams;     HINSTANCE hInstance;     HMENU     hMenu

2007-08-11 11:33:00 759

原创 Win32 common control(Statusbar)

common control 发送notification 到父窗口,当事件发生时。这是通用控件的设计方法!common control也是窗口,也就有window class,也能使用一般的窗口函数处理他们。一些发送WM_COMMAND消息给父窗口,一些但是使用WM_NOTIFY来通知父窗口代码如://子控件发送WM_COMMAND,而在父窗口处理函数中处理他们,为什么他们不给自己的

2007-08-04 17:18:00 1430

原创 Subclassing 笔记

    window class中最重要的是他的lpfnWndProc,他处理由该类别产生的窗口的所有信息。在RegisterClassEx返回之前,系统配置一块内存来记录这个类别的相关信息,包括lpfnWndProc的值.注意是系统完成的!!!   每当我们的程序用这个类别产生新的窗口,系统又会配置有新的窗口的内存块,用来存放与窗口相关的信息.其中也包括窗口处理函数WndProc的地址,而他

2007-08-04 06:46:00 711

原创 修改一个工作空间中的工程文件目录结构

如果有两个工程,Test1 Test2,那么默认目录结构的是Test1.dswTest1.dsp---|                     Test2/Test2.dsp这个结构不太清晰,用过vc7或更高的朋友知道,他们的目录结构是Test1.dsw---|                     Test1/Test1.dsp                     Test2/T

2007-08-03 19:18:00 646

原创 c/c++混合编程

最近有人问起C/C++混合编程的问题,google了一些资料放这里==================================================http://www.gbunix.com/htmldata/2004_12/14/20/article_828_1.html如果C++程序要调用已经被编译后的C函数,该怎么办?假设某个C函数的声明如下:void foo(int

2007-08-03 10:21:00 1015

翻译 在WinSock上使用IOCP

在WinSock上使用IOCP - -                                       在WinSock上使用IOCP 在WinSock上使用IOCP 本文章假设你已

2007-08-02 19:31:00 896

翻译 Windows Sockets 2.0: Write Scalable Winsock Apps Using Completion Ports翻译一

原文http://msdn.microsoft.com/msdnmag/issues/1000/Winsock/Windows Sockets 2.0: Write Scalable Winsock Apps Using Completion PortsSUMMARY 写一个网络应用程序不难,但是写一个稳定的程序就是一个挑战。Overlapped I/O using completion po

2007-08-02 17:20:00 1119

原创 变量作用域1

代码块作用域#include stdio.h>int main()......{ int main_scop=0; for(int i=0;i2;i++) ......{  int for_scop=1; } for_scop +=1;   //for_scop : undeclared identifier printf("for_scop : %d  ",for_scop); retu

2007-08-02 12:46:00 565

原创 变量作用域3

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////作用域和

2007-08-02 12:41:00 536

原创 变量作用域2

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////到这里解

2007-08-02 12:37:00 542

原创 size_t类型

c规定sizeof 返回 size_t类型,其实他不是一个新类型,他与可移植类型(如int32_t)相同,他是根据标准类型定义的.使用的是typedeftypedef unsigned int size_t而对于他的占位符是%u或%lu或更先进%zd _t说明是通用类型

2007-08-02 10:11:00 798

原创 chm乱码解决方法

打字太累了,不过我还是尽力讲清楚!英文版的chm文件中,有些乱码是因为ie的编码不对,只要右击有乱码的那页选"查看原代码",并另存为".html"的网页,  再用ie打开,右击ie,在"编码"中选"西欧" 方法2 打开AppLocal,在程序的路径选择才c:/WINDOWS/hh.exe(我的机器是这样的),在参数中选择你要打开的CHM文件的Full-path(路径+文件名),下一步,

2007-08-02 08:32:00 2235

原创 how to enumerate subkey names under an arbitrary key

#include #include #include #include VOID PrintSubKeyNames(HKEY hkey){ //取得最长subkey的长度,不是字节数,是字符个数   DWORD dwMaxSubkeyLen;   RegQueryInfoKey(hkey,NULL,NULL,NULL,NULL,&dwMaxSubkeyLen,NULL,NULL,NULL,NULL

2007-08-01 11:25:00 491

原创 对话框2

对话框是窗口,那么窗口背后一定有一个窗口类,而这个类的名称是#32770现在有这种情况:如果应用程序是基于对话框的,那么一定还要很多对话框,而我又想改变对话框的类,可是牵一发而动全身,所有的对话框都变了,那么要修改默认的对话框类名#32770,如何做呢?想想在注册类时可以给出类名,但那是我自己设计的类阿,而对话框类是M$设计的阿,麻烦!且慢,M$也一定用RegisteClassEx来注册的,那

2007-08-01 08:41:00 726

python rsa实现

使用python2根据Crypto库实现rsa公私钥生成、加密、解密、签名和验证。完全封装一句话使用。

2020-09-18

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除