//
//
//
//
//
//
//
//
//
//
软件Tags:
外部工具栏操作类轻松隐藏托盘图标源码系统结构:初始化类,取按钮数,取按钮ID,加入状态,去除状态,取状态,判断状态,删除按钮,取标题,置标题,取类型,置类型,取图片,置图片,取按钮大小,置按钮大小,取按钮矩形,置标题为提示文本,插入按钮,取图片组句柄,置图片组句柄,属性_位置,属性_平面,属性_上边线,属性_允许多行,打开进程,写进程内存,结束操作,读外部指针数据,分配外部指针,销毁外部指针,发送消息_API,发送消息_TBBUTTON,发送消息_TBBUTTONINFO,取窗口类名_API,取数据地址_TBBUTTONINFO,取数据地址_TBBUTTONINFO2,取数据地址_TBBUTTON,取数据地址_文本,取数据地址_矩形,取数据地址_整数,取数据地址_字节,拷贝内存_TBBUTTON,拷贝内存_矩形,拷贝内存_整数,取窗口风格_API,置窗口风格_API,重画窗口_API,GetWindowThreadProcessId,OpenProcess,VirtualAllocEx,VirtualFreeEx,WriteProcessMemory,CloseHandle,CreateFileMapping,MapViewOfFile,UnmapViewOfFile,ReadProcessMemory,取托盘区句柄_,A寻找顶级窗口,A寻找子窗口,ImageList_Create,ImageList_Destroy,ImageList_AddIcon,初始化类,取按钮数,取按钮ID,加入状态,去除状态,取状态,判断状态,删除按钮,取标题,置标题,取类型,置类型,取图片,置图片,取托盘区图标,取按钮大小,置按钮大小,取按钮矩形,置标题为提示文本,插入按钮,取图片组句柄,置图片组句柄,属性_位置,属性_平面,属性_上边线,属性_允许多行,打开进程,写进程内存,结束操作,读外部指针数据,分配外部指针,销毁外部指针,发送消息_API,发送消息_TBBUTTON,发送消息_TBBUTTONINFO,取窗口类名_API,取数据地址_TBBUTTONINFO,取数据地址_TBBUTTONINFO2,取数据地址_TBBUTTON,取数据地址_文本,取数据地址_矩形,取数据地址_整数,取数据地址_字节,拷贝内存_TBBUTTON,拷贝内存_TRAYDATA,拷贝内存_矩形,拷贝内存_整数,取窗口风格_API,置窗口风格_API,重画窗口_API,GetWindowThreadProcessId,OpenProcess,VirtualAllocEx,VirtualFreeEx,WriteProcessMemory,CloseHandle,CreateFileMapping,MapViewOfFile,UnmapViewOfFile,ReadProcessMemory,======程序集1||||------_启动子程序||||------_临时子程序||||======工具栏操作类||||------_初始化||||------_销毁||||------初始化类||||------取按钮数||||------取按钮ID||||------加入状态||||------去除状态||||------取状态||||------判断状态||||------删除按钮||||------取标题||||------置标题||||------取类型||||------置类型||||------取图片||||------置图片||||------取按钮大小||||------置按钮大小||||------取按钮矩形||||------置标题为提示文本||||------插入按钮||||------取图片组句柄||||------置图片组句柄||||------属性_位置||||------属性_平面||||------属性_上边线||||------属性_允许多行||||======外部控件操作类||||------_初始化||||------_销毁||||------打开进程||||------写进程内存||||------结束操作||||------读外部指针数据||||------分配外部指针||||------销毁外部指针||||======程序集2||||------_启动子程序||||------_临时子程序||||======调用的Dll||||---[dll]------发送消息_API||||---[dll]------发送消息_TBBUTTON||||---[dll]------发送消息_TBBUTTONINFO||||---[dll]------取窗口类名_API||||---[dll]------取数据地址_TBBUTTONINFO||||---[dll]------取数据地址_TBBUTTONINFO2||||---[dll]------取数据地址_TBBUTTON||||---[dll]------取数据地址_文本||||---[dll]------取数据地址_矩形||||---[dll]------取数据地址_整数||||---[dll]------取数据地址_字节||||---[dll]------拷贝内存_TBBUTTON||||---[dll]------拷贝内存_矩形||||---[dll]------拷贝内存_整数||||---[dll]------取窗口风格_API||||---[dll]------置窗口风格_API||||---[dll]------重画窗口_API||||---[dll]------GetWindowThreadProcessId||||---[dll]------OpenProcess||||---[dll]------VirtualAllocEx||||---[dll]------VirtualFreeEx||||---[dll]------WriteProcessMemory||||---[dll]------CloseHandle||||---[dll]------CreateFileMapping||||---[dll]------MapViewOfFile||||---[dll]------UnmapViewOfFile||||---[dll]------ReadProcessMemory======窗口程序集1||||------_按钮1_被单击||||------_按钮2_被单击||||------_按钮3_被单击||||------取托盘区句柄_||||------__启动窗口_创建完毕||||------__启动窗口_将被销毁||||======调用的Dll||||---[dll]------A寻找顶级窗口||||---[dll]------A寻找子窗口||||---[dll]------ImageList_Create||||---[dll]------ImageList_Destroy||||---[dll]------ImageList_AddIcon======程序集1||||------_启动子程序||||------_临时子程序||||======工具栏操作类||||------_初始化||||------_销毁||||------初始化类||||------取按钮数||||------取按钮ID||||------加入状态||||------去除状态||||------取状态||||------判断状态||||------删除按钮||||------取标题||||------置标题||||------取类型||||------置类型||||------取图片||||------置图片||||------取托盘区图标||||------取按钮大小||||------置按钮大小||||------取按钮矩形||||------置标题为提示文本||||------插入按钮||||------取图片组句柄||||------置图片组句柄||||------属性_位置||||------属性_平面||||------属性_上边线||||------属性_允许多行||||======外部控件操作类||||------_初始化||||------_销毁||||------打开进程||||------写进程内存||||------结束操作||||------读外部指针数据||||------分配外部指针||||------销毁外部指针||||======调用的Dll||||---[dll]------发送消息_API||||---[dll]------发送消息_TBBUTTON||||---[dll]------发送消息_TBBUTTONINFO||||---[dll]------取窗口类名_API||||---[dll]------取数据地址_TBBUTTONINFO||||---[dll]------取数据地址_TBBUTTONINFO2||||---[dll]------取数据地址_TBBUTTON||||---[dll]------取数据地址_文本||||---[dll]------取数据地址_矩形||||---[dll]------取数据地址_整数||||---[dll]------取数据地址_字节||||---[dll]------拷贝内存_TBBUTTON||||---[dll]------拷贝内存_TRAYDATA||||---[dll]------拷贝内存_矩形||||---[dll]------拷贝内存_整数||||---[dll]------取窗口风格_API||||---[dll]------置窗口风格_API||||---[dll]------重画窗口_API||||---[dll]------GetWindowThreadProcessId||||---[dll]------OpenProcess||||---[dll]------VirtualAllocEx||||---[dll]------VirtualFreeEx||||---[dll]------WriteProcessMemory||||---[dll]------CloseHandle||||---[dll]------CreateFileMapping||||---[dll]------MapViewOfFile||||---[dll]------UnmapViewOfFile||||---[dll]------ReadProcessMemory 调用的DLL命令:.DLL命令发送消息_API,整数型,"user32","SendMessageA".参数窗口句柄,整数型,,要接收消息的那个窗口的句柄.参数信息值,整数型,,消息的标识符.参数参数一,整数型,,具体取决于消息.参数参数二,整数型,,具体取决于消息;.DLL命令发送消息_TBBUTTON,整数型,"user32","SendMessageA".参数窗口句柄,整数型,,要接收消息的那个窗口的句柄.参数信息值,整数型,,消息的标识符.参数参数一,整数型,,具体取决于消息.参数参数二,TBBUTTON,,具体取决于消息;.DLL命令发送消息_TBBUTTONINFO,整数型,"user32","SendMessageA".参数窗口句柄,整数型,,要接收消息的那个窗口的句柄.参数信息值,整数型,,消息的标识符.参数参数一,整数型,,具体取决于消息.参数参数二,TBBUTTONINFO,,具体取决于消息;.DLL命令取窗口类名_API,整数型,"user32","GetClassNameA",,为指定的窗口取得类名以字节数表示的类名长度;排除最后的空中止字符。零表示出错。会设置GetLastError.参数窗口句柄,整数型,,欲获得类名的那个窗口的句柄.参数缓冲区,文本型,,随同类名载入的缓冲区。预先至少必须分配nMaxCount+1个字符.参数缓冲区长度,整数型,,由lpClassName提供的缓冲区长度;.DLL命令取数据地址_TBBUTTONINFO,整数型,"kernel32","lstrcpynA".参数数据1,TBBUTTONINFO,传址.参数数据2,TBBUTTONINFO,传址.参数保留,整数型.DLL命令取数据地址_TBBUTTONINFO2,整数型,"kernel32","lstrcpynA".参数数据1,TBBUTTONINFO2,传址.参数数据2,TBBUTTONINFO2,传址.参数保留,整数型.DLL命令取数据地址_TBBUTTON,整数型,"kernel32","lstrcpynA".参数数据1,TBBUTTON,传址.参数数据2,TBBUTTON,传址.参数保留,整数型.DLL命令取数据地址_文本,整数型,"kernel32","lstrcpynA".参数数据1,文本型,传址.参数数据2,文本型,传址.参数保留,整数型.DLL命令取数据地址_矩形,整数型,"kernel32","lstrcpynA".参数数据1,RECT,传址.参数数据2,RECT,传址.参数保留,整数型.DLL命令取数据地址_整数,整数型,"kernel32","lstrcpynA".参数数据1,整数型,传址.参数数据2,整数型,传址.参数保留,整数型.DLL命令取数据地址_字节,整数型,"kernel32","lstrcpynA".参数数据1,字节型,传址.参数数据2,字节型,传址.参数保留,整数型.DLL命令拷贝内存_TBBUTTON,,"kernel32.dll","RtlMoveMemory",,拷贝内存.参数目标内容,TBBUTTON,传址.参数源数据,字节集.参数尺寸,整数型.DLL命令拷贝内存_矩形,,"kernel32.dll","RtlMoveMemory",,拷贝内存.参数目标内容,RECT,传址.参数源数据,字节集.参数尺寸,整数型.DLL命令拷贝内存_整数,,"kernel32.dll","RtlMoveMemory",,拷贝内存.参数目标内容,整数型,传址.参数源数据,TBBUTTON.参数尺寸,整数型.DLL命令取窗口风格_API,整数型,"user32","GetWindowLongA",,从指定窗口的结构中取得信息由nIndex决定。零表示出错。会设置GetLastError.参数窗口句柄,整数型,,欲为其获取信息的窗口的句柄.参数属性,整数型,,欲取回的信息,可以是下述任何一个常数:;GWL_EXSTYLE:扩展窗口样式;GWL_STYLE:窗口样式;GWL_WNDPROC:该窗口的窗口函数的地址;GWL_HINSTANCE:拥有窗口的实例的句柄;GWL_HWNDPARENT:该窗口之父的句柄。不要用SetWindowWord来改变这个值;GWL_ID:对话框中一个子窗口的标识符;GWL_USERDATA:含义由应用程序规定;DWL_DLGPROC:这个窗口的对话框函数地址;DWL_MSGRESULT:在对话框函数中处理的一条消息返回的值;DWL_USER:含义由应用程序规定;.DLL命令置窗口风格_API,整数型,"user32","SetWindowLongA",,在窗口结构中为指定的窗口设置信息指定数据的前一个值.参数窗口句柄,整数型,,欲为其取得信息的窗口的句柄.参数信息值,整数型,,请参考GetWindowLong函数的nIndex参数的说明.参数新窗口信息,整数型,,由nIndex指定的窗口信息的新值;.DLL命令重画窗口_API,整数型,"user32","InvalidateRect",,这个函数屏蔽一个窗口客户区的全部或部分区域。这会导致窗口在事件期间部分重画非零表示成功,零表示失败.参数窗口句柄,整数型,,待屏蔽窗口的句柄.参数屏蔽矩形,整数型,,RECT,用于描述待屏蔽矩形部分的一个矩形结构。可用InvalidateRectBynum函数,同时将lpRect设为零(Long数据类型),从而屏蔽(或禁用)整个窗口.参数重画前删除,整数型,,TRUE(非零)导致指定的区域在重画前先删除;.DLL命令GetWindowThreadProcessId,整数型,"user32.dll","GetWindowThreadProcessId".参数hwnd,整数型.参数lpdwProcessId,整数型,传址.DLL命令OpenProcess,整数型,"kernel32.dll","OpenProcess".参数dwDesiredAccess,整数型.参数bInheritHandle,逻辑型.参数dwProcessId,整数型.DLL命令VirtualAllocEx,整数型,"kernel32.dll","VirtualAllocEx".参数hProcess,整数型.参数lpAddress,整数型.参数dwSize,整数型.参数flAllocationType,整数型.参数flProtect,整数型.DLL命令VirtualFreeEx,整数型,"kernel32.dll","VirtualFreeEx".参数hProcess,整数型.参数lpAddress,整数型.参数dwSize,整数型.参数flAllocationType,整数型.DLL命令WriteProcessMemory,整数型,"kernel32.dll","WriteProcessMemory".参数hProcess,整数型.参数lpBaseAddress,整数型.参数lpBuffer,整数型.参数nSize,整数型.参数lpNumberOfBytesWritten,整数型.DLL命令CloseHandle,整数型,"kernel32.dll","CloseHandle".参数hObject,整数型.DLL命令CreateFileMapping,整数型,"kernel32.dll","CreateFileMappingA",,创建一个新的文件映射对象.参数hFile,整数型.参数lpFileMappigAttributes,整数型.参数flProtect,整数型.参数dwMaximumSizeHigh,整数型.参数dwMaximumSizeLow,整数型.参数lpName,整数型.DLL命令MapViewOfFile,整数型,"kernel32.dll","MapViewOfFile",,将一个文件映射对象映射到当前应用程序的地址空间.参数hFileMappingObject,整数型.参数dwDesiredAccess,整数型.参数dwFileOffsetHigh,整数型.参数dwFileOffsetLow,整数型.参数dwNumberOfBytesToMap,整数型.DLL命令UnmapViewOfFile,整数型,"kernel32.dll","UnmapViewOfFile",,在当前应用程序的内存地址空间解除对一个文件映射对象的映射.参数lpBaseAddress,整数型.DLL命令ReadProcessMemory,整数型,,"ReadProcessMemory".参数hProcess,整数型.参数lpBaseAddress,整数型.参数lpBuffer,字节集,传址.参数nSize,整数型.参数lpNumberOfBytesWritten,整数型调用的DLL命令:.DLL命令A寻找顶级窗口,整数型,"user32","FindWindowA",公开,寻找窗口列表中第一个符合指定条件的顶级窗口(在vb里使用:FindWindow最常见的一个用途是获得ThunderRTMain类的隐藏窗口的句柄;该类是所有运行中vb执行程序的一部分。获得句柄后,可用api函数GetWindowText取得这个窗口的名称;该名也是应用程序的标题) 找到窗口的句柄。如未找到相符窗口,则返回零。会设置GetLastError.参数窗口类名,文本型,,指向包含了窗口类名的空中止(C语言)字串的指针;或设为零,表示接收任何类.参数窗口文本,文本型,,指向包含了窗口文本(或标签)的空中止(C语言)字串的指针;或设为零,表示接收任何窗口标题示例Dimhw&,cnt&DimrttitleAs*256hw&=FindWindow("ThunderRT5Main",vbNullString)'ThunderRTMainunderVB4cnt=GetWindowText(hw&,rttitle,255)MsgBoxLeft,0,"RTMaintitle";.DLL命令A寻找子窗口,整数型,"user32","FindWindowExA",公开,在窗口列表中寻找与指定条件相符的第一个子窗口 找到的窗口的句柄。如未找到相符窗口,则返回零。会设置GetLastError.参数窗口句柄1,整数型,,在其中查找子的父窗口。如设为零,表示使用桌面窗口(通常说的顶级窗口都被认为是桌面的子窗口,所以也会对它们进行查找).参数窗口句柄2,整数型,,从这个窗口后开始查找。这样便可利用对FindWindowEx的多次调用找到符合条件的所有子窗口。如设为零,表示从第一个子窗口开始搜索.参数欲搜索的类名1,文本型,,欲搜索的类名。零表示忽略.参数欲搜索的类名2,文本型,,欲搜索的类名。零表示忽略;.DLL命令ImageList_Create,整数型,"comctl32.dll","ImageList_Create".参数cx,整数型,,宽度.参数cy,整数型,,高度.参数flags,整数型,,位深ILC_.参数cInitial,整数型,,初始数量.参数cGrow,整数型,,是否手动销毁.DLL命令ImageList_Destroy,整数型,"comctl32.dll","ImageList_Destroy".参数himl,整数型.DLL命令ImageList_AddIcon,整数型,"comctl32.dll","ImageList_AddIcon".参数himl,整数型.参数hicon,整数型调用的DLL命令:.DLL命令发送消息_API,整数型,"user32","SendMessageA".参数窗口句柄,整数型,,要接收消息的那个窗口的句柄.参数信息值,整数型,,消息的标识符.参数参数一,整数型,,具体取决于消息.参数参数二,整数型,,具体取决于消息;.DLL命令发送消息_TBBUTTON,整数型,"user32","SendMessageA".参数窗口句柄,整数型,,要接收消息的那个窗口的句柄.参数信息值,整数型,,消息的标识符.参数参数一,整数型,,具体取决于消息.参数参数二,TBBUTTON,,具体取决于消息;.DLL命令发送消息_TBBUTTONINFO,整数型,"user32","SendMessageA".参数窗口句柄,整数型,,要接收消息的那个窗口的句柄.参数信息值,整数型,,消息的标识符.参数参数一,整数型,,具体取决于消息.参数参数二,TBBUTTONINFO,,具体取决于消息;.DLL命令取窗口类名_API,整数型,"user32","GetClassNameA",,为指定的窗口取得类名以字节数表示的类名长度;排除最后的空中止字符。零表示出错。会设置GetLastError.参数窗口句柄,整数型,,欲获得类名的那个窗口的句柄.参数缓冲区,文本型,,随同类名载入的缓冲区。预先至少必须分配nMaxCount+1个字符.参数缓冲区长度,整数型,,由lpClassName提供的缓冲区长度;.DLL命令取数据地址_TBBUTTONINFO,整数型,"kernel32","lstrcpynA".参数数据1,TBBUTTONINFO,传址.参数数据2,TBBUTTONINFO,传址.参数保留,整数型.DLL命令取数据地址_TBBUTTONINFO2,整数型,"kernel32","lstrcpynA".参数数据1,TBBUTTONINFO2,传址.参数数据2,TBBUTTONINFO2,传址.参数保留,整数型.DLL命令取数据地址_TBBUTTON,整数型,"kernel32","lstrcpynA".参数数据1,TBBUTTON,传址.参数数据2,TBBUTTON,传址.参数保留,整数型.DLL命令取数据地址_文本,整数型,"kernel32","lstrcpynA".参数数据1,文本型,传址.参数数据2,文本型,传址.参数保留,整数型.DLL命令取数据地址_矩形,整数型,"kernel32","lstrcpynA".参数数据1,RECT,传址.参数数据2,RECT,传址.参数保留,整数型.DLL命令取数据地址_整数,整数型,"kernel32","lstrcpynA".参数数据1,整数型,传址.参数数据2,整数型,传址.参数保留,整数型.DLL命令取数据地址_字节,整数型,"kernel32","lstrcpynA".参数数据1,字节型,传址.参数数据2,字节型,传址.参数保留,整数型.DLL命令拷贝内存_TBBUTTON,,"kernel32.dll","RtlMoveMemory",,拷贝内存.参数目标内容,TBBUTTON,传址.参数源数据,字节集.参数尺寸,整数型.DLL命令拷贝内存_TRAYDATA,,"kernel32.dll","RtlMoveMemory",,拷贝内存.参数目标内容,TRAYDATA,传址.参数源数据,字节集.参数尺寸,整数型.DLL命令拷贝内存_矩形,,"kernel32.dll","RtlMoveMemory",,拷贝内存.参数目标内容,RECT,传址.参数源数据,字节集.参数尺寸,整数型.DLL命令拷贝内存_整数,,"kernel32.dll","RtlMoveMemory",,拷贝内存.参数目标内容,整数型,传址.参数源数据,TBBUTTON.参数尺寸,整数型.DLL命令取窗口风格_API,整数型,"user32","GetWindowLongA",,从指定窗口的结构中取得信息由nIndex决定。零表示出错。会设置GetLastError.参数窗口句柄,整数型,,欲为其获取信息的窗口的句柄.参数属性,整数型,,欲取回的信息,可以是下述任何一个常数:;GWL_EXSTYLE:扩展窗口样式;GWL_STYLE:窗口样式;GWL_WNDPROC:该窗口的窗口函数的地址;GWL_HINSTANCE:拥有窗口的实例的句柄;GWL_HWNDPARENT:该窗口之父的句柄。不要用SetWindowWord来改变这个值;GWL_ID:对话框中一个子窗口的标识符;GWL_USERDATA:含义由应用程序规定;DWL_DLGPROC:这个窗口的对话框函数地址;DWL_MSGRESULT:在对话框函数中处理的一条消息返回的值;DWL_USER:含义由应用程序规定;.DLL命令置窗口风格_API,整数型,"user32","SetWindowLongA",,在窗口结构中为指定的窗口设置信息指定数据的前一个值.参数窗口句柄,整数型,,欲为其取得信息的窗口的句柄.参数信息值,整数型,,请参考GetWindowLong函数的nIndex参数的说明.参数新窗口信息,整数型,,由nIndex指定的窗口信息的新值;.DLL命令重画窗口_API,整数型,"user32","InvalidateRect",,这个函数屏蔽一个窗口客户区的全部或部分区域。这会导致窗口在事件期间部分重画非零表示成功,零表示失败.参数窗口句柄,整数型,,待屏蔽窗口的句柄.参数屏蔽矩形,整数型,,RECT,用于描述待屏蔽矩形部分的一个矩形结构。可用InvalidateRectBynum函数,同时将lpRect设为零(Long数据类型),从而屏蔽(或禁用)整个窗口.参数重画前删除,整数型,,TRUE(非零)导致指定的区域在重画前先删除;.DLL命令GetWindowThreadProcessId,整数型,"user32.dll","GetWindowThreadProcessId".参数hwnd,整数型.参数lpdwProcessId,整数型,传址.DLL命令OpenProcess,整数型,"kernel32.dll","OpenProcess".参数dwDesiredAccess,整数型.参数bInheritHandle,逻辑型.参数dwProcessId,整数型.DLL命令VirtualAllocEx,整数型,"kernel32.dll","VirtualAllocEx".参数hProcess,整数型.参数lpAddress,整数型.参数dwSize,整数型.参数flAllocationType,整数型.参数flProtect,整数型.DLL命令VirtualFreeEx,整数型,"kernel32.dll","VirtualFreeEx".参数hProcess,整数型.参数lpAddress,整数型.参数dwSize,整数型.参数flAllocationType,整数型.DLL命令WriteProcessMemory,整数型,"kernel32.dll","WriteProcessMemory".参数hProcess,整数型.参数lpBaseAddress,整数型.参数lpBuffer,整数型.参数nSize,整数型.参数lpNumberOfBytesWritten,整数型.DLL命令CloseHandle,整数型,"kernel32.dll","CloseHandle".参数hObject,整数型.DLL命令CreateFileMapping,整数型,"kernel32.dll","CreateFileMappingA",,创建一个新的文件映射对象.参数hFile,整数型.参数lpFileMappigAttributes,整数型.参数flProtect,整数型.参数dwMaximumSizeHigh,整数型.参数dwMaximumSizeLow,整数型.参数lpName,整数型.DLL命令MapViewOfFile,整数型,"kernel32.dll","MapViewOfFile",,将一个文件映射对象映射到当前应用程序的地址空间.参数hFileMappingObject,整数型.参数dwDesiredAccess,整数型.参数dwFileOffsetHigh,整数型.参数dwFileOffsetLow,整数型.参数dwNumberOfBytesToMap,整数型.DLL命令UnmapViewOfFile,整数型,"kernel32.dll","UnmapViewOfFile",,在当前应用程序的内存地址空间解除对一个文件映射对象的映射.参数lpBaseAddress,整数型.DLL命令ReadProcessMemory,整数型,,"ReadProcessMemory".参数hProcess,整数型.参数lpBaseAddress,整数型.参数lpBuffer,字节集,传址.参数nSize,整数型.参数lpNumberOfBytesWritten,整数型
