js ctypes 操作注册表
文章转自王牌软件
站长推荐:NSetup一键部署软件
一键式完成美化安装包制作,自动增量升级,数据统计,数字签名。应对各种复杂场景,脚本模块化拆分,常规复杂的脚本代码,图形化设置。无需专业的研发经验,轻松完成项目部署。(www.nsetup.cn)
只回答业务咨询
站长推荐:NSetup一键部署软件
一键式完成美化安装包制作,自动增量升级,数据统计,数字签名。应对各种复杂场景,脚本模块化拆分,常规复杂的脚本代码,图形化设置。无需专业的研发经验,轻松完成项目部署。(www.nsetup.cn)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
function getLocalVersion(){ //::RegSetValueExA(m_hkey, key.c_str(), 0, REG_SZ, (BYTE*)val.c_str(), (DWORD)val.size()); //if (::RegOpenKeyExA(hkey, subKey.c_str(), 0, KEY_ALL_ACCESS, &m_hkey) != ERROR_SUCCESS) var lib = ctypes.open("Advapi32.dll"); var RegQueryValueExW = lib.declare("RegQueryValueExW", ctypes.winapi_abi, ctypes.int32_t, HKEY, ctypes.jschar.ptr, LPDWORD, LPDWORD, ctypes.jschar.ptr, LPDWORD); var RegOpenKeyExW = lib.declare("RegOpenKeyExW", ctypes.winapi_abi, ctypes.int32_t, HKEY, ctypes.jschar.ptr, LPDWORD, LPDWORD, HKEY.ptr); var m_hkey = HKEY(); var version = ctypes.jschar.array(1024)("");; if (RegOpenKeyExW(HKEY(HKEY_LOCAL_MACHINE), ctypes.jschar.array()("SOFTWARE\\Wow6432Node\\xxx\\appname"), LPDWORD(0), LPDWORD(KEY_QUERY_VALUE), m_hkey.address()) == ERROR_SUCCESS) { var len = DWORD(1024 * 2); var ret = RegQueryValueExW(m_hkey, ctypes.jschar.array()("UpdateVersion"), LPDWORD(0), LPDWORD(0), version, len.address()); } lib.close(); var resutVersion = version.readString(); return "["+resutVersion+"]"; } |
学习日记,兼职软件设计,软件修改,毕业设计。
本文出自 学习日记,转载时请注明出处及相应链接。
本文永久链接: https://www.softwareace.cn/?p=1047