你目前正处于脱机状态,正在等待 Internet 重新连接

PRB:#pragma comment(lib...) 仅可以指定库

本文的发布号曾为 CHS153901
症状
注释 pragma 可以允许用户在目标文件或可执行文件中插入注释。lib 指定符允许用户向链接器传递该注释,以在使用对象模块时指定其它的链接库。有些用户使用 lib 注释 pragma 以添加链接器选项和库名,例如:
   #pragma comment(lib, "MSVCRT -VERBOSE")
在 Visual C++ 2.x 中,代码行照原样将字符串传递给链接器,结果导致编译时附加了 /VERBOSE 链接器选项和 MSVCRT.LIB 库。但是,这种情况并不仅限于上述方式。编译器不会将注释字符串放在引号内,而会用空格分隔文本。

在 Visual C++ 4.0、4.1、和 4.2 中,编译器将注释字符串正确地放在引号内,因而导致上述代码产生以下错误:
LINK :fatal error LNK1104:cannot open file "MSVCRT -VERBOSE.lib"
解决方案
使用下列新的 pragma 来指定链接器选项:
#pragma comment(linker, "<linker options>")
状态
这种现象是设计使然。
更多信息

示例代码



// Compile options needed:none// test.c#pragma comment(lib,"MYLIBRARY -VERBOSE")void main(void){}
参考
有关 /VERBOSE 的其它信息,请参阅产品文档。
10.00 10.10 10.20
属性

文章 ID:153901 - 上次审阅时间:07/05/2005 22:07:00 - 修订版本: 1.1

  • Microsoft Visual C++, 32-bit Learning Edition 6.0
  • Microsoft Visual C++ 4.1 Subscription
  • Microsoft Visual C++ 6.0 企业版
  • Microsoft Visual C++ 6.0 专业版
  • Microsoft Visual C++ 5.0 企业版
  • Microsoft Visual C++ 5.0 专业版
  • Microsoft Visual C++ 4.2 企业版
  • Microsoft Visual C++ 4.2 专业版
  • Microsoft Visual C++ 4.0 标准版
  • kbvc400 kbvc410 kbvc420 kbvc500 kbvc600 kbdss kbprb kbusage kbcompiler KB153901
反馈