gpt4 book ai didi

c - 在 Windows 7 上动态加载注册表功能?

转载 作者:太空宇宙 更新时间:2023-11-04 07:42:48 24 4
gpt4 key购买 nike

我正在从库 Advapi32.dll 中动态加载多个注册表 API。在 Windows XP 和 Vista 下一切正常。在 Windows 7 下,我不断收到错误参数不正确,在某些情况下(如 RegCloseKey)我的应用程序崩溃。

我使用的代码是通常的:

// RegCreateKeyEx
typedef LONG (WINAPI *MyRegCreateKeyEx)(HKEY, LPCTSTR, DWORD, LPTSTR, DWORD, REGSAM, LPSECURITY_ATTRIBUTES, PHKEY, LPDWORD);
MyRegCreateKeyEx LoadedRegCreateKeyEx;

然后我使用 LoadLibrary 加载 Advapi.dll 并使用 GetProcAddress 找到 RegCreateKeyEx 的地址。喜欢:

LoadedRegCreateKeyEx = (MyRegCreateKeyEx)GetProcAddress(LibHandle, "RegCreateKeyEx");

一切都返回正常,没有错误,指针似乎是正确的,但它在 Windows 7 下不起作用。有任何想法吗?有什么改变吗?对于 Windows 7,是否有不同的方法来执行此操作?

谢谢杰西。

编辑:这个问题似乎扩展到 Windows 7 上的所有类型的 API。有什么想法吗?

最佳答案

您可能希望在调用 GetProcAddress 时指定正确的版本,即 A 代表 ANSI,W 代表 UNICODE。

关于c - 在 Windows 7 上动态加载注册表功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1883894/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com