易语言使用指定线程执行子程序模块源码
系统结构:测试,新线程,子程序,线程执行子程序,OpenProcess,OpenThread,VirtualAllocEx,CloseHandle,SuspendThread,ResumeThread,GetThreadContext,SetThreadContext,GetProcAddress,GetModuleHandle,WriteProcessMemoryBin,GetCurrentThreadId,WaitForSingleObject,GetCurrentProcessId,CreateThread,
======程序集1
| |
| |------ _启动子程序
| |
| |------ 测试
| |
| |------ 新线程
| |
| |------ 子程序
| |
| |------ 线程执行子程序
| |
| |
======调用的Dll
| |
| |---[dll]------ OpenProcess
| |
| |---[dll]------ OpenThread
| |
| |---[dll]------ VirtualAllocEx
| |
| |---[dll]------ CloseHandle
| |
| |---[dll]------ SuspendThread
| |
| |---[dll]------ ResumeThread
| |
| |---[dll]------ GetThreadContext
| |
| |---[dll]------ SetThreadContext
| |
| |---[dll]------ GetProcAddress
| |
| |---[dll]------ GetModuleHandle
| |
| |---[dll]------ WriteProcessMemoryBin
| |
| |---[dll]------ GetCurrentThreadId
| |
| |---[dll]------ WaitForSingleObject
| |
| |---[dll]------ GetCurrentProcessId
| |
| |---[dll]------ CreateThread
调用的DLL命令:
.DLL命令 OpenProcess, 整数型, "kernel32.dll", "OpenProcess", 公开, 将句柄返回给过程对象
.参数 进程对象, 整数型, , dwDesiredAccess
.参数 继承句柄, 整数型, , bInheritHandle
.参数 进程标识符, 整数型, , dwProcessId
.DLL命令 OpenThread, 整数型, , "OpenThread", 公开
.参数 打开方式, 整数型
.参数 继承, 整数型
.参数 线程ID, 整数型
.DLL命令 VirtualAllocEx, 整数型, , "VirtualAllocEx", 公开
.参数 hProcess, 整数型
.参数 lpAddress, 整数型
.参数 dwSize, 整数型
.参数 flAllocationType, 整数型
.参数 flProtect, 整数型
.DLL命令 CloseHandle, 逻辑型, "kernel32.dll", , 公开, 关闭对象
.参数 对象句柄, 整数型
.DLL命令 SuspendThread, 整数型, , , 公开
.参数 线程句柄, 整数型
.DLL命令 ResumeThread, 整数型, , , 公开
.参数 线程ID, 整数型
.DLL命令 GetThreadContext, 逻辑型, "KERNEL32.DLL", , 公开
.参数 线程句柄, 整数型
.参数 寄存器, 寄存器
.DLL命令 SetThreadContext, 逻辑型, , , 公开
.参数 线程句柄, 整数型
.参数 寄存器, 寄存器
.DLL命令 GetProcAddress, 整数型, , "GetProcAddress", 公开
.参数 hModule, 整数型
.参数 lpProcName, 文本型
.DLL命令 GetModuleHandle, 整数型, , "GetModuleHandleA", 公开
.参数 lpModuelName, 文本型
.DLL命令 WriteProcessMemoryBin, 逻辑型, "kernel32", "WriteProcessMemory", 公开, 在指定进程中写内存
.参数 hProcess, 整数型
.参数 lpBaseAddress, 整数型
.参数 lpBuffer, 字节集, 传址
.参数 nSize, 整数型
.参数 lpNumberOfBytesWritten, 整数型, 传址
.DLL命令 GetCurrentThreadId, 整数型, "kernel32", "GetCurrentThreadId", 公开, 获取当前线程一个唯一的线程标识符 当前的线程标识符
.DLL命令 WaitForSingleObject, 整数型, "kernel32", "WaitForSingleObject", 公开, 监测一个对象
.参数 hHandle, 整数型
.参数 dwMilliseconds, 整数型
.DLL命令 GetCurrentProcessId, 整数型, "kernel32.dll", "GetCurrentProcessId", 公开
.DLL命令 CreateThread, 整数型, , "CreateThread", 公开, 创建线程生成线程成功,CreateThread函数返回新线程的句柄。否则返回NULL。线程执行完毕后自动退出(除非进入的是循环)。
.参数 lpThreadAttributes, 整数型, , 线程的security属性,缺省为0
.参数 dwStackSize, 整数型, , 线程的堆栈大小,为0时与进程相同
.参数 lpStartAddress, 子程序指针, , 线程函数的起始地址
.参数 lpParameter, 整数型, , 传递线程的上下文,可以传递一个整数型参数。
.参数 dwCreationFlags, 整数型, , 0:创建线程后立即启动,相反的是标志位CREATE_SUSPENDED,这样您需要稍后显示地让该线程运行(可设为-1)
.参数 lpThreadId, 整数型, 传址, 内核给新生成的线程分配的线程ID
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言两个文件内存中通讯源码,子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错...
易语言易模块管理器Include目录源码,CopyTo_CreateProcessDebugInfo,CopyTo_CreateThreadDebugInfo,CopyTo_ExitThreadDebugInfo,CopyTo_ExitProcessDebugInfo,CopyTo_LoadDllDebugInfo,CopyTo_UnloadDllDebugInfo,CopyTo_ExceptionDebugInfo,Copy...
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错误信息,读入字节集,读入2M字节集,清除文件缓冲区,读入文本,写出文本,写文本行,读入一行,插入字节集,取文件号...
初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...