易语言对话框模板源码
系统结构:DialogFunc,EndDialog,DialogBoxParam,取实例句柄_,CopyMemory_,VirtualProtect,FindResource,LoadResource,API_创建文件映射对象,API_MapViewOfFile,API_UnmapViewOfFile,
======窗口程序集1
| |
| |------ DialogFunc
| |
| |------ _按钮1_被单击
| |
| |------ _按钮2_被单击
| |
| |------ _按钮3_被单击
| |
| |
======调用的Dll
| |
| |---[dll]------ EndDialog
| |
| |---[dll]------ DialogBoxParam
| |
| |---[dll]------ 取实例句柄_
| |
| |---[dll]------ CopyMemory_
| |
| |---[dll]------ VirtualProtect
| |
| |---[dll]------ FindResource
| |
| |---[dll]------ LoadResource
| |
| |---[dll]------ API_创建文件映射对象
| |
| |---[dll]------ API_MapViewOfFile
| |
| |---[dll]------ API_UnmapViewOfFile
调用的DLL命令:
.DLL命令 EndDialog, 逻辑型, , "EndDialog"
.参数 hDlg, 整数型, , ""
.参数 nResult, , , "未知类型:INT_PTR。"
.DLL命令 DialogBoxParam, , , "DialogBoxParamA"
.参数 hInstance, 整数型
.参数 lpTemplateName, 整数型
.参数 hWndParent, 整数型
.参数 lpDialogFunc, 整数型, , "可能为一个 DLGPROC 子程序指针。"
.参数 dwInitParam, 整数型
.DLL命令 取实例句柄_, 整数型, , "GetModuleHandleA", , ,
.参数 程序名, 整数型
.DLL命令 CopyMemory_, 整数型, "Kernel32.dll", "RtlMoveMemory"
.参数 Destination, 整数型
.参数 Source, 字节集
.参数 Length, 整数型
.DLL命令 VirtualProtect, 逻辑型, "kernel32", "VirtualProtect"
.参数 lpAddress, 整数型, , 虚拟信息.BaseAddress
.参数 dwSize, 整数型, , 虚拟信息.RegionSize
.参数 flNewProtect, 整数型, , 修改类型,#PAGE_EXECUTE_READWRITE 64为可读写模式
.参数 lpflOldProtect, 整数型, 传址, 虚拟信息.Protect
.DLL命令 FindResource, 整数型, , "FindResourceA"
.参数 hModule, 整数型, , ""
.参数 lpName, 整数型, , ""
.参数 lpType, 整数型, , ""
.DLL命令 LoadResource, 整数型
.参数 hModule, 整数型, , ""
.参数 hResInfo, 整数型, , ""
.DLL命令 API_创建文件映射对象, 整数型, "kernel32", "CreateFileMappingA", , 创建一个新的文件映射对象 新建文件映射对象的句柄;零意味着出错。会设置GetLastError。即使函数成功,但倘若返回的句柄属于一个现成的文件映射对象,那么GetLastError也会设置成ERROR_ALREADY_EXISTS。在这种情况下,文件映射的长度就是现有对象的长度,而不是这个函数指定的尺寸
.参数 文件映射句柄, 整数型, , 指定欲在其中创建映射的一个文件句柄。&HFFFFFFFF&表示在内存中创建一个文件映射
.参数 security对象, 整数型, , SECURITY_ATTRIBUTES,指定一个security对象,在创建文件映射时使用。如果为NULL(用ByVal As Long传递零),表示使用默认security对象
.参数 打开映射方式, 整数型, , 下述常数之一:;PAGE_READONLY:以只读方式打开映射;PAGE_READWRITE:以可读、可写方式打开映射;PAGE_WRITECOPY:为写操作留下备份可组合使用下述一个或多个常数;SEC_COMMIT:为文件映射一个小节中的所有页分配内存;SEC_IMAGE:文件是个可执行文件;SEC_RESERVE:为没有分配实际内存的一个小节保留虚拟内存空间
.参数 文件映射最大长度, 整数型, , 文件映射的最大长度(高32位)
.参数 文件映射的最小长度, 整数型, , 文件映射的最小长度(低32位)。如这个参数和dwMaximumSizeHigh都是零,就用磁盘文件的实际长度
.参数 映射对象名, 文本型, , 指定文件映射对象的名字。如存在这个名字的一个映射,函数就会打开它。用vbNull创建一个无名的文件映射;
.DLL命令 API_MapViewOfFile, 整数型, "kernel32", "MapViewOfFile", , 将一个文件映射对象映射到当前应用程序的地址空间。MapViewOfFileEx允许我们指定一个基本地址来进行映射 文件映射在内存中的起始地址。零表示出错。会设置GetLastError
.参数 hFileMappingObject, 整数型
.参数 dwDesiredAccess, 整数型
.参数 dwFileOffsetHigh, 整数型
.参数 dwFileOffsetLow, 整数型
.参数 dwNumberOfBytesToMap, 整数型
.DLL命令 API_UnmapViewOfFile, 整数型, "kernel32", "UnmapViewOfFile", , 在当前应用程序的内存地址空间解除对一个文件映射对象的映射 非零表示成功,零表示失败。会设置GetLastError
.参数 lpBaseAddress, 整数型, , 指定要解除映射的一个文件映射的基准地址。这个地址是早先用MapViewOfFile函数获得的;
注:本站源码主要来源于网络收集。如有侵犯您的利益,请联系我们,我们将及时删除!
部分源码可能含有危险代码,(如关机、格式化磁盘等),请看清代码在运行。
由此产生的一切后果本站均不负责。源码仅用于学习使用,如需运用到商业场景请咨询原作者。
使用本站源码开发的产品均与本站无任何关系,请大家遵守国家相关法律。