64位讀取登錄檔與32位的區別

2021-07-30 10:03:05 字數 543 閱讀 2810

有乙個讀取登錄檔資訊的程式  if (regopenkeyex(hkey_local_machine, subkeystring , 0, key_read, &hkey) == error_success)/

,在32位下完全正常,但是在64位返回值正確,但就是讀不到東西。後來單步發現讀不到東西,就搜64位讀登錄檔失敗,發現需要加

if (regopenkeyex(hkey_local_machine, subkeystring , 0,key_read|key_wow64_64key, &hkey) == error_success)就可以了,我是全部把許可權提高,還可以根據不同的作業系統,設定不同的引數。

typedef bool (winapi *lpfn_iswow64process) (handle, pbool);

lpfn_iswow64process fniswow64process;

iswow64返回true則是64位系統,否則為32位系統。

bool iswow64()

}return biswow64;}

可參考的文獻:

64位讀取登錄檔與32位的區別

有乙個讀取登錄檔資訊的程式 if regopenkeyex hkey local machine,subkeystring 0,key read,hkey error success 在32位下完全正常,但是在64位返回值正確,但就是讀不到東西。後來單步發現讀不到東西,就搜64位讀登錄檔失敗,發現需...

64位讀取登錄檔與32位的區別

有乙個讀取登錄檔資訊的程式 if regopenkeyex hkey local machine,subkeystring 0,key read,hkey error success 在32位下完全正常,但是在64位返回值正確,但就是讀不到東西。後來單步發現讀不到東西,就搜64位讀登錄檔失敗,發現需...

Win7 64位登錄檔與32位登錄檔的區別

本文介紹如何通過使用 64 位版本 windows 檢視 windows 登錄檔。64 位版本 windows 中的登錄檔分為 32 位登錄檔項和 64 位登錄檔項。許多 32 位登錄檔項與其相應的 64 位登錄檔項同名,反之亦然。64 位版本 windows 包含的預設 64 位版本登錄檔編輯器 ...