vc6 link warning 4089 discarded by /OPT:REF

vc6 link warning 4089 discarded by /OPT:REF

vc6 编译时会出现下面的警告信息:

LINK : warning LNK4089: all references to "SHELL32.DLL" discarded by /OPT:REF
LINK : warning LNK4089: all references to "VERSION.DLL" discarded by /OPT:REF

表示 /OPT:REF 放弃对 dynamic link library 中导出所有封装函数的引用,即对"SHELL32.DLL" 和 "VERSION.DLL" 的引用。可以考虑移除对 dynamic link library 中的引用,以加快生成速度。如果代码中未使用的函数引用了链接器已放弃的 dynamic link library 导出函数,可能会出现此警告。

使用 /VERBOSE 查看链接器所放弃的函数,然后将它们从代码中移除。

#pragma comment(linker,"/verbose")

也可使用 "/OPT:NOREFS" 或者 "/IGNORE:4089" 直接移除警告

//#pragma warning(disable:4089)//只对当前源文件作用
#pragma comment(linker,"/opt:noref") // 或者
#pragma comment(linker,"/ignore:4089") // 生成的可执行文件,相对noref会小些

 

你可能感兴趣的:(#,error)