我正在编写一个应用程序,它将使用APIRegDeleteKey或RegDeleteKeyEx递归地删除一些注册表项。困扰我的是RegDeleteKeyEx没有为XPx64Professional定义,所以现在这个限制限制了我的应用程序。有什么方法可以同时使用从XPx86到Win7x64的兼容API? 最佳答案 为了让您的应用程序在不存在RegDeleteKeyEx的旧系统中运行,您需要避免静态链接到此API。也就是说,您不直接使用此函数,而是通过GetProcAddress在运行时获取它的指针。如果成功,则API可用,您可以使用它(
我正在尝试为32位和64位操作系统实现注册表项的递归删除。由于RegDeleteKeyEx未针对低于XPx64Professional的操作系统定义,因此我尝试间接使用该函数。问题::即使在x64上,GetProcAddress()也会返回NULL。//GlobalDeclarationstypedefLONG(WINAPI*PFN_RegDeleteKeyEx)(HKEYhKey,LPCTSTRlpSubKey,REGSAMsamDesired,DWORDReserved);PFN_RegDeleteKeyEx_RegDeleteKeyEx;//Thecodeinsidefuncti
背景我正在WIN7上使用VS2015编写一个C++应用程序。此应用程序将在所有大于等于XP的Windows操作系统上运行。在我的代码中,我使用了很多WINAPI调用。我希望在编译时阻止使用未在winXP中定义的API。动机在某些时候,我使用函数RegDeleteKeyExfunction没有注意到此API在winXP中不可用解决方案所以,我关注了这个帖子:ModifyingWINVERand_WIN32_WINNT并声明:#include#define_WIN32_WINNT0x0501#defineWINVER0x0501在文件targetver.h我希望在此修复后,当我编译包含Re