
 
易语言彗星热键模块源码
系统结构:彗星注册窗口热键,彗星撤销窗口热键,热键处理初始化,CallProc,SetHotKeyProp,GetHotKeyProp,IsHotKey,Hook_WndProc,Hook_OnCreate,HotKey_CallWindowProc,HotKey_SubClassWindow,HotKey_OnMessage,HotKey_OnKeyDown,HotKey_OnKeyUP,HotKey_OnChar,HotKey_OnHotkeyMsg,CallNextHookEx,CallWindowProc,SendMessage,SetWindowsHookEx,GetModuleHandle,GetCurrentThread,GetCurrentThreadId,RtlMoveMemory_CWPSTRUCT,SetWindowLong,GetProp,SetProp,DefWindowProc,GetAncestor,GetWindow,IsWindow,GetKeyboardState,CallWindowProc_Bin,GetKeyState,GetAsyncKeyState,RegisterWindowMessage,PostMessage,RemoveProp, 
======模块功能程序集 
           |  | 
           |  |------ _启动子程序 
           |  | 
           |  |------ _临时子程序 
           |  | 
           |  |------ 彗星注册窗口热键 
           |  | 
           |  |------ 彗星撤销窗口热键 
           |  | 
           |  |------ 热键处理初始化 
           |  | 
           |  | 
======辅助处理程序集 
           |  | 
           |  |------ CallProc 
           |  | 
           |  |------ SetHotKeyProp 
           |  | 
           |  |------ GetHotKeyProp 
           |  | 
           |  |------ IsHotKey 
           |  | 
           |  | 
======消息响应程序集 
           |  | 
           |  |------ Hook_WndProc 
           |  | 
           |  |------ Hook_OnCreate 
           |  | 
           |  |------ HotKey_CallWindowProc 
           |  | 
           |  |------ HotKey_SubClassWindow 
           |  | 
           |  |------ HotKey_OnMessage 
           |  | 
           |  |------ HotKey_OnKeyDown 
           |  | 
           |  |------ HotKey_OnKeyUP 
           |  | 
           |  |------ HotKey_OnChar 
           |  | 
           |  |------ HotKey_OnHotkeyMsg 
           |  | 
           |  | 
======调用的Dll 
           |  | 
           |  |---[dll]------   CallNextHookEx 
           |  | 
           |  |---[dll]------   CallWindowProc 
           |  | 
           |  |---[dll]------   SendMessage 
           |  | 
           |  |---[dll]------   SetWindowsHookEx 
           |  | 
           |  |---[dll]------   GetModuleHandle 
           |  | 
           |  |---[dll]------   GetCurrentThread 
           |  | 
           |  |---[dll]------   GetCurrentThreadId 
           |  | 
           |  |---[dll]------   RtlMoveMemory_CWPSTRUCT 
           |  | 
           |  |---[dll]------   SetWindowLong 
           |  | 
           |  |---[dll]------   GetProp 
           |  | 
           |  |---[dll]------   SetProp 
           |  | 
           |  |---[dll]------   DefWindowProc 
           |  | 
           |  |---[dll]------   GetAncestor 
           |  | 
           |  |---[dll]------   GetWindow 
           |  | 
           |  |---[dll]------   IsWindow 
           |  | 
           |  |---[dll]------   GetKeyboardState 
           |  | 
           |  |---[dll]------   CallWindowProc_Bin 
           |  | 
           |  |---[dll]------   GetKeyState 
           |  | 
           |  |---[dll]------   GetAsyncKeyState 
           |  | 
           |  |---[dll]------   RegisterWindowMessage 
           |  | 
           |  |---[dll]------   PostMessage 
           |  | 
           |  |---[dll]------   RemoveProp 
 
  
调用的DLL命令: 
.DLL命令 CallNextHookEx, 整数型, "user32", "CallNextHookEx", , 调中链中的下一个挂钩过程  
    .参数 hHook, 整数型 
    .参数 ncode, 整数型 
    .参数 wParam, 整数型 
    .参数 lParam, 整数型 
.DLL命令 CallWindowProc, 整数型, "user32", "CallWindowProcA", , 将消息传答窗口函数  
    .参数 lpPrevWndFunc, 整数型 
    .参数 hwnd, 整数型 
    .参数 msg, 整数型 
    .参数 wParam, 整数型 
    .参数 lParam, 整数型 
.DLL命令 SendMessage, 整数型, "user32", "SendMessageA", , 调用一个窗口的窗口函数,将一条消息发给那个窗口。除非消息处理完毕,否则该函数不会返回。SendMessageBynum, ;    SendMessageByString是该函数的“类型security”声明形式 由具体的消息决定 
    .参数 hWnd, 整数型, , 要接收消息的那个窗口的句柄 
    .参数 wMsg, 整数型, , 消息的标识符 
    .参数 wParam, 整数型, , 具体取决于消息 
    .参数 lParam, 整数型, , 具体取决于消息; 
.DLL命令 SetWindowsHookEx, 整数型, "user32", "SetWindowsHookExA", , 安装钩子过程  
    .参数 idHook, 整数型 
    .参数 lpfn, 整数型 
    .参数 hmod, 整数型 
    .参数 dwThreadId, 整数型 
.DLL命令 GetModuleHandle, 整数型, "kernel32", "GetModuleHandleA", , 获取一个应用程序或动态链接库的模块句柄 如执行成功成功,则返回模块句柄。零表示失败。会设置GetLastError 
    .参数 lpModuleName, 文本型, , 指定模块名,这通常是与模块的文件名相同的一个名字。例如,NOTEPAD.EXE程序的模块文件名就叫作NOTEPAD;   
.DLL命令 GetCurrentThread, 整数型, "kernel32", "GetCurrentThread", , 获取当前线程的一个伪句柄 当前线程的伪句柄 
.DLL命令 GetCurrentThreadId, 整数型, "kernel32", "GetCurrentThreadId", , 获取当前线程一个唯一的线程标识符 当前的线程标识符 
.DLL命令 RtlMoveMemory_CWPSTRUCT, 整数型, , "RtlMoveMemory" 
    .参数 Destination, CWPSTRUCT 
    .参数 Source, 整数型 
    .参数 Length, 整数型 
.DLL命令 SetWindowLong, 整数型, "user32", "SetWindowLongA", , 在窗口结构中为指定的窗口设置信息 指定数据的前一个值 
    .参数 hwnd, 整数型 
    .参数 nIndex, 整数型 
    .参数 dwNewLong, 整数型 
.DLL命令 GetProp, 整数型, "user32", "GetPropA", , 从窗口属性表列中返回数据句柄  
    .参数 hwnd, 整数型 
    .参数 lpString, 文本型 
.DLL命令 SetProp, 整数型, "user32", "SetPropA", , 增加或修改属性列项  
    .参数 hwnd, 整数型 
    .参数 lpString, 文本型 
    .参数 hData, 整数型 
.DLL命令 DefWindowProc, 整数型, "user32", "DefWindowProcA", , 调用缺省窗口过程  
    .参数 hwnd, 整数型 
    .参数 wMsg, 整数型 
    .参数 wParam, 整数型 
    .参数 lParam, 整数型 
.DLL命令 GetAncestor, 整数型, "user32.dll", "GetAncestor", ,   
    .参数 hwnd, 整数型 
    .参数 gaFlags, 整数型 
.DLL命令 GetWindow, 整数型, "user32", "GetWindow", , 获得一个窗口的句柄,该窗口与某源窗口有特定的关系 由wCmd决定的一个窗口的句柄。如没有找到相符窗口,或者遇到错误,则返回零值。会设置GetLastError 
    .参数 hwnd, 整数型, , 源窗口 
    .参数 wCmd, 整数型, , 指定结果窗口与源窗口的关系,它们建立在下述常数基础上:;GW_CHILD:寻找源窗口的第一个子窗口;GW_HWNDFIRST:为一个源子窗口寻找第一个兄弟(同级)窗口,或寻找第一个顶级窗口;GW_HWNDLAST:为一个源子窗口寻找最后一个兄弟(同级)窗口,或寻找最后一个顶级窗口;GW_HWNDNEXT:为源窗口寻找下一个兄弟窗口;GW_HWNDPREV:为源窗口寻找前一个兄弟窗口;GW_OWNER:寻找窗口的所有者;   
.DLL命令 IsWindow, 整数型, "user32", "IsWindow", , 判断一个窗口句柄是否有效 非零表示成功,零表示失败 
    .参数 hwnd, 整数型, , 待检查窗口的句柄;   
.DLL命令 GetKeyboardState, 整数型, "user32", "GetKeyboardState", , 取得键盘上每个虚拟键当前的状态 非零表示成功,零表示失败。会设置GetLastError 
    .参数 pbKeyState, 字节型, , 总共含256个条目的字节数组中的第一个项目。每个字节都会附带载入与虚拟键对应的状态。如开关键打开,则位0设为1(开关键包括CapsLock, NumLock, ScrollLock);如某个键当时按下,则位7为1;如已经抬起,则为0;   
.DLL命令 CallWindowProc_Bin, 整数型, "user32.dll", "CallWindowProcA" 
    .参数 机器码, 字节集 
    .参数 程序指针, 整数型 
    .参数 参数1, 整数型 
    .参数 参数2, 整数型 
    .参数 参数3, 整数型 
.DLL命令 GetKeyState, 短整数型, "user32", "GetKeyState", , 针对已处理过的按键,在最近一次输入信息时,判断指定虚拟键的状态 如开关键打开,则位0设为1(开关键包括CapsLock, ;    NumLock,ScrollLock);如某个键当时正处于按下状态,则位15为1;如已经抬起,则为0 
    .参数 nVirtKey, 整数型, , 欲测试的虚拟键键码。对字母、数字字符(A-Z、a-z、0-9),用它们实际的ASCII值; 
.DLL命令 GetAsyncKeyState, 短整数型, "user32", "GetAsyncKeyState", , 判断函数调用时指定虚拟键的状态 自对GetAsyncKeyState函数的上一次调用以来,如键已被按过,则位0设为1;否则设为0。如键目前处于按下状态,则位15设为1;如抬起,则为0。微软的win32手册指出:倘若输入焦点从属于与调用函数的输入线程不同的另一个输入线程,则返回值为0(例如,一旦另一个程序拥有焦点,则它应返回零)。证据显示,函数实际是在整个系统的范围内工作的 
    .参数 vKey, 整数型, , 欲测试的虚拟键的键码;   
.DLL命令 RegisterWindowMessage, 整数型, "user32", "RegisterWindowMessageA", , 获取分配给一个字串标识符的消息编号 &C000 到 &FFFF之间的一个消息编号。零意味着出错 
    .参数 lpString, 文本型, , 注册消息的名字;   
.DLL命令 PostMessage, 整数型, "user32", "PostMessageA", , 将一条消息投递到指定窗口的消息队列。投递的消息会在Windows事件处理过程中得到处理。在那个时候,会随同投递的消息调用指定窗口的窗口函数。特别适合那些不需要立即处理的窗口消息的发送 如消息投递成功,则返回TRUE(非零)。会设置GetLastError 
    .参数 hwnd, 整数型, , 接收消息的那个窗口的句柄。如设为HWND_BROADCAST,表示投递给系统中的所有顶级窗口。如设为零,表示投递一条线程消息(参考PostThreadMessage) 
    .参数 wMsg, 整数型, , 消息标识符 
    .参数 wParam, 整数型, , 具体由消息决定 
    .参数 lParam, 整数型, , 具体由消息决定; 
.DLL命令 RemoveProp, 整数型, "user32", "RemovePropA", , 删除属性列入口  
    .参数 hwnd, 整数型 
    .参数 lpString, 文本型 
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言两个文件内存中通讯源码,子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错...
易语言易模块管理器Include目录源码,CopyTo_CreateProcessDebugInfo,CopyTo_CreateThreadDebugInfo,CopyTo_ExitThreadDebugInfo,CopyTo_ExitProcessDebugInfo,CopyTo_LoadDllDebugInfo,CopyTo_UnloadDllDebugInfo,CopyTo_ExceptionDebugInfo,Copy...
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错误信息,读入字节集,读入2M字节集,清除文件缓冲区,读入文本,写出文本,写文本行,读入一行,插入字节集,取文件号...
初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...