【发布时间】:2009-11-11 14:45:01
【问题描述】:
我们使用的第 3 方库有时无法在 Win7 上正常运行。我们知道如何在安装时进行配置,但我们也想考虑在运行时进行设置。这是可能的,还是必须在启动之前设置上下文? (我认为几乎没有机会,但我想我还是会问)
(C++ 应用程序 - 并不重要)
【问题讨论】:
标签: c++ windows compatibility-mode
我们使用的第 3 方库有时无法在 Win7 上正常运行。我们知道如何在安装时进行配置,但我们也想考虑在运行时进行设置。这是可能的,还是必须在启动之前设置上下文? (我认为几乎没有机会,但我想我还是会问)
(C++ 应用程序 - 并不重要)
【问题讨论】:
标签: c++ windows compatibility-mode
应用程序运行后无法更改兼容性设置。
但是,您可以做一个启动器应用程序,确保兼容性设置正确,然后启动您的应用程序。当然,您需要确保启动器应用程序没有兼容性问题。
【讨论】:
兼容性设置只是预处理器宏,用于阻止在所选平台上不可用的头文件中的部分 Win32 API。
但是,由于整个 API 由 DLL 提供,您可以确定运行时运行的操作系统,然后使用 LoadLibrary 和 GetProcAddress 获取必要的平台特定入口点。
【讨论】: