易语言得力注册表操作类模块源码
系统结构:取根句柄,取根名称,取项目句柄,取目标键名,取字节集文本,Ansi2Unicode,Unicode2Ansi,汇编调用子程序,是否64位,是否存在,导入文件,导入文本,删除,枚举,枚举子键,枚举键值,取子键数量,写数值项,写字节集项,写字符串项,写多字符串项,写可扩充字符串项,取数值项,取字节集项,取字符串项,取多字符串项,取可扩充字符串项,删除X64,枚举X64,取项目句柄X64,取数值项X64,取字节集项X64,取字符串项X64,取多字符串项X64,取可扩充字符串项X64,写数值项X64,写字符串项X64,写字节集项X64,写多字符串项X64,写可扩充字符串项X64,API_打开注册表转向,API_关闭注册表转向,API_打开文件系统转向,API_关闭文件系统转向,API_注册表_保存到文件,API_注册表_从文件恢复,API_注册表_监视子项,API_注册表_打开项EX,API_注册表_打开项,API_注册表_创建项,API_注册表_置项值,API_注册表_取项值,API_注册表_关闭项,API_注册表_删除值,API_注册表_删除项,API_注册表_枚举键值,API_注册表_枚举子键,API_注册表_枚举子键数量,API_取64位系统目录,API_取函数地址,API_取模块句柄,API_WideCharToMultiByte,API_MultiByteToWideChar,
======程序集
| |
| |------ _启动子程序
| |
| |------ _临时子程序
| |
| |
======注册表
| |
| |------ _初始化
| |
| |------ _销毁
| |
| |------ ___________________________以下为无需公开的内部方法_______________________________
| |
| |------ 取根句柄
| |
| |------ 取根名称
| |
| |------ 取项目句柄
| |
| |------ 取目标键名
| |
| |------ 取字节集文本
| |
| |------ Ansi2Unicode
| |
| |------ Unicode2Ansi
| |
| |------ 汇编调用子程序
| |
| |------ ___________________________以下为通用注册表方法_______________________________
| |
| |------ 是否64位
| |
| |------ 是否存在
| |
| |------ 导入文件
| |
| |------ 导入文本
| |
| |------ ___________________________以下为32位注册表方法_______________________________
| |
| |------ 删除
| |
| |------ 枚举
| |
| |------ 枚举子键
| |
| |------ 枚举键值
| |
| |------ 取子键数量
| |
| |------ 写数值项
| |
| |------ 写字节集项
| |
| |------ 写字符串项
| |
| |------ 写多字符串项
| |
| |------ 写可扩充字符串项
| |
| |------ 取数值项
| |
| |------ 取字节集项
| |
| |------ 取字符串项
| |
| |------ 取多字符串项
| |
| |------ 取可扩充字符串项
| |
| |------ ___________________________以下为64位注册表方法_______________________________
| |
| |------ 删除X64
| |
| |------ 枚举X64
| |
| |------ 取项目句柄X64
| |
| |------ 取数值项X64
| |
| |------ 取字节集项X64
| |
| |------ 取字符串项X64
| |
| |------ 取多字符串项X64
| |
| |------ 取可扩充字符串项X64
| |
| |------ 写数值项X64
| |
| |------ 写字符串项X64
| |
| |------ 写字节集项X64
| |
| |------ 写多字符串项X64
| |
| |------ 写可扩充字符串项X64
| |
| |
======调用的Dll
| |
| |---[dll]------ API_打开注册表转向
| |
| |---[dll]------ API_关闭注册表转向
| |
| |---[dll]------ API_打开文件系统转向
| |
| |---[dll]------ API_关闭文件系统转向
| |
| |---[dll]------ API_注册表_保存到文件
| |
| |---[dll]------ API_注册表_从文件恢复
| |
| |---[dll]------ API_注册表_监视子项
| |
| |---[dll]------ API_注册表_打开项EX
| |
| |---[dll]------ API_注册表_打开项
| |
| |---[dll]------ API_注册表_创建项
| |
| |---[dll]------ API_注册表_置项值
| |
| |---[dll]------ API_注册表_取项值
| |
| |---[dll]------ API_注册表_关闭项
| |
| |---[dll]------ API_注册表_删除值
| |
| |---[dll]------ API_注册表_删除项
| |
| |---[dll]------ API_注册表_枚举键值
| |
| |---[dll]------ API_注册表_枚举子键
| |
| |---[dll]------ API_注册表_枚举子键数量
| |
| |---[dll]------ API_取64位系统目录
| |
| |---[dll]------ API_取函数地址
| |
| |---[dll]------ API_取模块句柄
| |
| |---[dll]------ API_WideCharToMultiByte
| |
| |---[dll]------ API_MultiByteToWideChar
调用的DLL命令:
.DLL命令 API_打开注册表转向, 整数型, "advapi32.dll", "RegEnableReflectionKey", , RegEnableReflectionKey
.参数 hBase, 整数型
.DLL命令 API_关闭注册表转向, 整数型, "advapi32.dll", "RegDisableReflectionKey", , RegDisableReflectionKey
.参数 hBase, 整数型
.DLL命令 API_打开文件系统转向, 逻辑型, "kernel32", "Wow64RevertWow64FsRedirection", , Wow64RevertWow64FsRedirection
.参数 oldvalue, 整数型
.DLL命令 API_关闭文件系统转向, 逻辑型, "kernel32", "Wow64DisableWow64FsRedirection", , Wow64DisableWow64FsRedirection
.参数 oldvalue, 整数型, 传址
.DLL命令 API_注册表_保存到文件, 整数型, , "RegSaveKeyA", , advapi32.dll将一个项以及它的所有子项都保存到一个磁盘文件 Long,零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
.参数 标准项名或项句柄, 整数型, , Long,一个已打开项的句柄,或指定一个标准项名
.参数 lpFile, 文本型, , String,要在其中保存注册表信息的一个磁盘文件的名字
.参数 lpSecurityAttributes, 整数型, , SECURITY_ATTRIBUTES,为保存的信息提供的security信息。可设为NULL,表示采用默认的security信息(变成ByVal As Long,并传递零值)
.DLL命令 API_注册表_从文件恢复, 整数型, , "RegRestoreKeyA", , 从一个磁盘文件恢复注册表信息 Long,零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
.参数 标准项名或项句柄, 整数型, , Long,一个已打开项的句柄,或者指定一个标准项名
.参数 lpFile, 文本型, , String,要从中恢复注册表信息的一个文件的名字
.参数 dwFlags, 整数型, , Long,0表示进行常规恢复。REG_WHOLE_HIVE_VOLATILE表示临时恢复信息(系统重新启动时不保存下来)。在这种情况下,标准项名或项句柄必须引用标准项名或项句柄_LOCAL_MACHINE 或 标准项名或项句柄_USERS
.DLL命令 API_注册表_监视子项, 整数型, , "RegNotifyChangeKeyValue", , advapi32.dll注册表项或它的任何一个子项发生变化时,用这个函数提供一种通知机制 Long,零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
.参数 标准项名或项句柄, 整数型, , Long,要监视的一个项的句柄,或者指定一个标准项名
.参数 bWatchSubtree, 逻辑型, , Long,TRUE(非零)表示监视子项以及指定的项
.参数 dwNotifyFilter, 整数型
.参数 hEvent, 整数型, , Long,一个事件的句柄。如fAsynchronus为False,则这里的设置会被忽略
.参数 fAsynchronus, 逻辑型, , Long,如果为零,那么除非侦测到一个变化,否则函数不会返回。否则这个函数会立即返回,而且在发生变化时触发由hEvent参数指定的一个事件
.DLL命令 API_注册表_打开项EX, 整数型, "advapi32.dll", "RegOpenKeyExA", , 打开一个现有的项。在win32下推荐使用这个函数 零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
.参数 标准项名或项句柄, 整数型, , 一个已打开项的句柄,或指定一个标准项名
.参数 全路径注册项, 文本型, , 欲打开注册表项的名字
.参数 保留参数, 整数型, , 未用,设为零
.参数 访问权限, 整数型, , 带有前缀KEY_??的一个或多个常数。它们的组合描述了允许对这个项进行哪些操作
.参数 注册表项句柄, 整数型, 传址, 用于装载打开项的名字的一个变量;
.DLL命令 API_注册表_打开项, 整数型, "advapi32.dll", "RegOpenKeyA", , 打开一个现有的注册表项 零(ERROR_SUCCESS)表示成功.其他任何值都代表一个错误代码
.参数 标准项名或项句柄, 整数型, , 一个已打开项的句柄,或指定一个标准项名
.参数 全路径注册项, 文本型, , 要打开的项名
.参数 注册表项句柄, 整数型, 传址, 指定一个变量,用于装载(保存)打开注册表项的一个句柄;
.DLL命令 API_注册表_创建项, 整数型, "advapi32.dll", "RegCreateKeyA", , 在指定的项下创建一个新项.如指定的项已经存在,那么函数会打开现有的项 零(ERROR_SUCCESS)表示成功.其他任何值都代表一个错误代码
.参数 标准项名或项句柄, 整数型, , 要打开项的句柄,或者一个标准项名
.参数 全路径注册项, 文本型, , 欲创建的新子项.可同时创建多个项,只需用反斜杠将它们分隔开即可.例如level1\level2\newkey
.参数 注册表项句柄, 整数型, 传址, 指定一个变量,用于装载新子项的句柄;
.DLL命令 API_注册表_置项值, 整数型, "advapi32.dll", "RegSetValueExA", , 写一个项的值 零(ERROR_SUCCESS)表示成功.其他任何值都代表一个错误代码
.参数 标准项名或项句柄, 整数型
.参数 全路径注册项, 文本型
.参数 Reserved, 整数型
.参数 注册表项类型, 整数型, , 1、REG_SZ(字符串类型) 2、REG_EXPAND_SZ(可扩展字符串型) 3、REG_BINARY(二进制型) 4、REG_DWORD(DWORD型) 7、REG_MULTI_SZ(多行字符串型)
.参数 注册表项值, 字节集, 传址
.参数 注册表项值长度, 整数型
.DLL命令 API_注册表_取项值, 整数型, "advapi32.dll", "RegQueryValueExA", , 读一个项的值 零(ERROR_SUCCESS)表示成功.其他任何值都代表一个错误代码
.参数 标准项名或项句柄, 整数型, , 一个已打开项的句柄,或者指定一个标准项名
.参数 全路径注册项, 文本型, , 要获取值的名字
.参数 lpReserved, 整数型, , 未用,设为零
.参数 注册表项类型, 整数型, 传址, 用于装载取回数据类型的一个变量
.参数 注册表项值, 字节集, 传址, 用于装载指定值的一个缓冲区
.参数 注册表项值长度, 整数型, 传址, 用于装载lpData缓冲区长度的一个变量.一旦返回,它会设为实际装载到缓冲区的字节数;
.DLL命令 API_注册表_关闭项, 整数型, "advapi32.dll", "RegCloseKey", , 关闭系统注册表中的一个项(或键) 零(ERROR_SUCCESS)表示成功.其他任何值都代表一个错误代码
.参数 注册表项句柄, 整数型, , 要关闭的项;
.DLL命令 API_注册表_删除值, 整数型, "advapi32.dll", "RegDeleteValueA", , advapi32.dll删除指定项下方的一个值 零(ERROR_SUCCESS)表示成功。其他任何值都代表一个错误代码
.参数 标准项名或项句柄, 整数型, , 一个已打开项的句柄,或标准项名之一
.参数 lpValueName, 文本型, , 要删除的值名。可设为vbNull或一个空串,表示删除那个项的默认值;
.DLL命令 API_注册表_删除项, 整数型, "advapi32.dll", "RegDeleteKeyA", , 删除一个注册表项,返回值:0、成功 2、失败(注册项不存在) 5、失败(该项下面有子项)
.参数 注册表项句柄, 整数型, , Long,一个已打开项的句柄,或者标准项名之一
.参数 lpSubKey, 文本型, , String,要删除项的名字.这个项的所有子项也会删除
.DLL命令 API_注册表_枚举键值, 整数型, "advapi32.dll", "RegEnumValueA", , RegEnumValueA
.参数 父键句柄, 整数型, , 已打开注册表项的句柄
.参数 键值索引, 整数型, , 欲获取值的索引.注意第一个值的索引编号为零
.参数 键值名称, 文本型, , 用于装载位于指定索引处值名的一个缓冲区
.参数 名称长度, 整数型, 传址, 用于装载lpValueName缓冲区长度的一个变量.一旦返回,它会设为实际载入缓冲区的字符数量
.参数 lpReserved, 整数型, , 未用设为零
.参数 键值类型, 整数型, 传址, 值的类型,用于装载值的类型代码的变量
.参数 键值数据, 字节集, 传址, 用于装载值数据的一个缓冲区
.参数 数据长度, 整数型, 传址, 用于装载lpData缓冲区长度的一个变量.一旦返回,它会设为实际载入缓冲区的字符数量
.DLL命令 API_注册表_枚举子键, 整数型, "advapi32.dll", "RegEnumKeyA", , RegEnumKeyA,0、枚举成功 <>0、枚举失败(返回值为错误代码)
.参数 标准项名或项句柄, 整数型, , 已打开注册表项的句柄
.参数 dwIndex, 整数型, , 欲获取的子项的索引.第一个子项的索引编号为零
.参数 lpName, 文本型, , 用于装载指定索引处项名的一个缓冲区
.参数 cbName, 整数型, , 缓冲区长度
.DLL命令 API_注册表_枚举子键数量, 整数型, "advapi32.dll", "RegQueryInfoKeyA", , RegQueryInfoKeyA,0、枚举成功 <>0、枚举失败(返回值为错误代码)
.参数 标准项名或项句柄, 整数型, , 已打开注册表项的句柄
.参数 lpClass, 整数型, , 指定一个字串,用于装载这个注册表项的类名
.参数 lpcbClass, 整数型, , 指定一个变量,用于装载lpClass缓冲区的长度.一旦返回,它会设为实际装载到缓冲区的字节数量
.参数 lpReserved, 整数型, , 未用,设为零
.参数 lpcSubKeys, 整数型, 传址, 用于装载(保存)这个项的子项数量的一个变量
.参数 lpcbMaxSubKeyLen, 整数型, , 指定一个变量,用于装载这个项最长一个子项的长度.注意这个长度不包括空中止字符
.参数 lpcbMaxClassLen, 整数型, , 指定一个变量,用于装载这个项之子项的最长一个类名的长度.注意这个长度不包括空中止字符
.参数 lpcValues, 整数型, , 用于装载这个项的设置值数量的一个变量
.参数 lpcbMaxValueNameLen, 整数型, , 指定一个变量,用于装载这个项之子项的最长一个值名的长度.注意这个长度不包括空中止字符
.参数 lpcbMaxValueLen, 整数型, , 指定一个变量,用于装载容下这个项最长一个值数据所需的缓冲区长度
.参数 lpcbSecurityDescriptor, 整数型, , 装载值security描述符长度的一个变量
.参数 lpftLastWriteTime, 整数型, , FILETIME,指定一个类型,用于容纳该项的上一次修改时间;
.DLL命令 API_取64位系统目录, 整数型, "kernel32.dll", "GetSystemWow64DirectoryA", , GetSystemWow64Directory
.参数 目录名称, 文本型, 传址
.参数 缓冲区长度, 整数型
.DLL命令 API_取函数地址, 整数型, "kernel32.dll", "GetProcAddress", , GetProcAddress 返回动态链接库函数地址
.参数 动态链接库句柄, 整数型
.参数 动态链接库函数, 文本型
.DLL命令 API_取模块句柄, 整数型, "kernel32.dll", "GetModuleHandleA", , 获取指定DLL或进程的模块句柄,如abcd.dll(也可能有.exe,不过较少)。如果参数为NULL,表示取当前进程(.exe)的模块句柄
.参数 lpModuleName, 文本型
.DLL命令 API_WideCharToMultiByte, 整数型, "kernel32", "WideCharToMultiByte", , WideCharToMultiByte
.参数 代码页, 整数型, , cp_开头常量
.参数 标志, 整数型, , 512
.参数 宽字符文本, 字节集, , 字节集
.参数 宽字符文本长度, 整数型
.参数 双字节文本, 文本型, , 字节集
.参数 双字节文本长度, 整数型
.参数 默认文本, 整数型
.参数 使用默认文本, 整数型
.DLL命令 API_MultiByteToWideChar, 整数型, "kernel32.dll", "MultiByteToWideChar", , MultiByteToWideChar
.参数 代码页, 整数型
.参数 标志, 整数型
.参数 双字节文本, 文本型
.参数 双字节文本长度, 整数型
.参数 宽字符文本, 字节集
.参数 宽字符文本长度, 整数型
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言仅用核心支持库实现对外部数据库的操作ADODB操作外部数据库例程源码,根据村组查询数据,数据库_读取数据到高级表格,数据库_保存高级表格数据到数据库,数据库_读取数据到列表...
易语言两个文件内存中通讯源码,子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错...
易语言易模块管理器Include目录源码,CopyTo_CreateProcessDebugInfo,CopyTo_CreateThreadDebugInfo,CopyTo_ExitThreadDebugInfo,CopyTo_ExitProcessDebugInfo,CopyTo_LoadDllDebugInfo,CopyTo_UnloadDllDebugInfo,CopyTo_ExceptionDebugInfo,Copy...
易语言卷帘工具箱源码,初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...
子程序1,打开文件,生成空文件,生成重复字节文件,移到文件首,移到文件尾,移动读写位置,取读写位置,关闭文件,取文件长度,写出字节集,是否在文件尾,取错误信息,读入字节集,读入2M字节集,清除文件缓冲区,读入文本,写出文本,写文本行,读入一行,插入字节集,取文件号...
初始化卷帘,取星期,更换风格,搜索文件,线程搜索,修改底色,获取信息,取信息记录,取网络信息...