我用的是WINAPI的SHGetSpecialFolderPath
函数,也是用windows的VisualExpressC++编译器(cl.exe)编译的。但是在链接阶段我得到这个错误:
error LNK2019: unresolved external symbol __imp___SHGetSpecialFolderPathA@16 referenced in function _main
我想我需要链接 Shell32.lib
,这是正确的吗?我该如何做才能让我的程序在另一个系统上运行,甚至可能是 XP 7,无需重新编译?
最佳答案
如果您从命令行编译,只需将 shell32.lib
添加到命令中,如下所示:
cl file1.cpp file2.cpp shell32.lib
您只是在使用 Windows 提供的功能。由于这个特殊功能几乎可以追溯到时间的黎明(Windows 95,如果我没记错的话),你不需要做任何特殊的事情就可以在任何当前的任何东西上使用它。
关于c++ - 如何使用 cl.exe 静态链接库以使用 SHGetSpecialFolderPath,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8140426/