使用IID_IShellFolder之类的接口的ID时候,有时后会出现Linker Tools Error LNK1103。
此时可以在某个.cpp文件中使用:
#include <initguid.h>
#undef _SHLGUID_H_
#include <ShlGuid.h>
这样就有了IID_IShellFolder的实现。接着就能正确在工程里使用IID_IShellFolder了。
有时候在Realse编译的时候也会出现,此时尝试以下的解决方法:
1.关闭优化,即 /Od 选项
2.关闭最小编译,即/Gm选项
3.打开函数级别链接/Gy 选项
4.尝试使用其他级别的编译/G选项
5.改变函数或者全局变量的顺序。
原文:
Turn off optimization with the /Od (Disable) option.
Disable minimal rebuild with the /Gm– (Enable Minimal Rebuild) option.
Compile with the /Gy (Enable Function-Level Linking) option to package functions.
Use a different code generation option. See the /G (Optimize for Processor) options.
Change the order of functions and global variables.