我无法构建需要 WOW64 Api 的库

发布于 2024-07-21 15:45:53 字数 239 浏览 7 评论 0原文

我正在修复 32 位应用程序的 Windows Vista 64 位的错误,当我尝试使用函数 Wow64DisableWow64FsRedirection(...) 时,编译器显示“未声明的标识符...”。

我包括 Windows.h 头文件并将 _WIN32_WINNT 设置为 0x0501。

有任何想法吗?

谢谢。

编辑:我们正在使用 MS Visual Studio 2003

I'm fixing a bug with Windows Vista 64 bits of a 32bit application, when I try to use the function Wow64DisableWow64FsRedirection(...) the compiler says 'undeclared identifier...'.

I'm including the Windows.h header file and set _WIN32_WINNT to 0x0501.

Any ideas?

Thanks.

EDIT: We're using MS Visual Studio 2003

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

情徒 2024-07-28 15:45:53

您的平台 SDK 文件可能太旧,不具有该功能。 该功能首先出现在XP 64位平台SDK中。 您可以在此处获取最新的 SDK:http://www.microsoft.com/downloads/details.aspx?FamilyID=e6e1c3df-a74f-4207-8586-711ebe331cdc&displaylang=en

尽管它说它是“The Windows SDK for Windows Server® 2008”,它只是最新的 SDK,并且将拥有您需要的所有向后兼容文件。

安装后,根据您的编译器,您可能必须将包含目录指向它。

Your platform SDK files are probably too old to have that function. That function first appeared in the XP 64 bit platform SDK. You can get the latest SDK here: http://www.microsoft.com/downloads/details.aspx?FamilyID=e6e1c3df-a74f-4207-8586-711ebe331cdc&displaylang=en

Even though it says it's "The Windows SDK for Windows Server® 2008" it is just the latest SDK and will have all the backwards compatible files you need.

After you install it, depending on your compiler you'll probably have to point the include directory to it.

红衣飘飘貌似仙 2024-07-28 15:45:53

你能在头文件中看到这个API吗? 您使用的 Visual Studio 可能没有更新头文件,在这种情况下,您需要为 Kernel32.dll 执行 LoadLibrary,然后为所需函数执行 GetProcAddress。

Can you see this API in the header file? May be the Visual Studio you are using is not having updated header file, in which case you will need to do a LoadLibrary for Kernel32.dll and then GetProcAddress for the required function.

碍人泪离人颜 2024-07-28 15:45:53

如果您的应用程序需要在 Windows XP 32 位或 Windows 2000 上运行,您应该按照 Canopus 的建议使用 LoadLibrary()GetProcAddress(),因为 Wow64DisableWow64FsRedirection( )Wow64RevertWow64FsRedirection() 直到 Windows XP 64 位和 Server 2003 SP1 才添加(根据 文档)。

If your application needs to work on Windows XP 32-bit or Windows 2000, you should use LoadLibrary() and GetProcAddress() as Canopus suggested, because Wow64DisableWow64FsRedirection() and Wow64RevertWow64FsRedirection() were not added until Windows XP 64-bit and Server 2003 SP1 (according to the documentation).

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文