我正在使用visual studio 2013并编译一些东西在Windows XP上运行它。它在我的Windows 10机器上运行正常但是当我在XP下启动时我得到错误:
the procedure entry point "SHGetKnownFolderPath" could not be located in the dynamic link library shell32.dll
我的vs-project中的选项设置为XP变体(v120_XP)。我还尝试将_WIN32_WINNT(以及我在互联网上找到的其他定义)设置为XP定义变体(例如_WIN32_WINNT = 0x0501),但没有成功。
我正在使用一些库,这些库都是未编译的v120_XP(例如boost)。
欢迎任何建议让我的项目在Windows XP上运行。
对不起我的错。甚至所有的图书馆都被迫不使用XP提供的任何东西我错过了一个我自己编译的库正在使用SHGetKnownFolderPath
。我通过dumpbin-ing所有库找到它。它是SimConnect.lib,用于Prepar3D。后来我发现:
Prepar3D v2不是 与Windows XP兼容,不建议在Windows Vista上使用。
答案 0 :(得分:2)
SHGetKnownFolderPath
,它仅适用于Vista及以上版本。