0

因此,我试图弄清楚在您构建项目时将哪些命令行参数发送到 Visual Studio 2013 中的 cl.exe。

我需要一个仅使用实际 cl.exe 并通过文本文件发送参数的副项目。

例如:

/Zc:wchar_t /fp:precise /D "WIN32" /D "_CONSOLE" /D "_LIB" /D "_UNICODE" /D "UNICODE" /EHsc /Od /MT *.cpp kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /link /FORCE:MULTIPLE /OUT:Output.exe

位于用于 cl.exe 的文本文件中。

然而,使用 cl.exe 编译程序只能在一半的时间内工作。该程序将锁定或崩溃。

使用 F7 (Build) 在 Visual Studio 中编译程序 100% 的时间都有效,所以我唯一能想到的为什么它在 cl.exe 上不起作用和崩溃是因为我的参数错误。

4

1 回答 1

2

从项目属性页获取命令行有两种方式:

  1. 在 C/C++ 部分中,有一个“命令行”小节列出了将使用的命令行(不带文件名参数)。
  2. 在 General 小节的 C/C++ 部分中,将“Suppress Startup Banner”更改为“No”。然后,这将在您构建时在输出窗口中打印用于每个源文件的命令行。
于 2015-04-09T03:53:37.947 回答