Tag: cl.exe

将标准输出/输入/错误重定向到文本框中或从文本框重定向

我正在制作一个可用于编辑,编译和运行C程序的VB.NET应用程序。 我使用了Process.StartInfo.RedirectStandardOutput属性。 但我无法将其重定向到文本框,因为它不是字符串类型。 如何将来自cl.exe进程的输出重定向到我的文本框?

通过CreateProcess启动时,cl.exe似乎没有写入权限

我正在调用CreateProcess来启动cl.exe(Win7 64位上的VS2010)。 我收到以下错误.. cl:命令行错误D8037:无法创建临时il文件; 清除旧的il文件的临时目录 在cmd窗口中使用相同的环境变量调用相同的命令行会成功。 我检查了临时目录,没有旧文件。 似乎创建的进程没有写入权限。 我一直在尝试不同的方法.. CreateProcessAsUser,设置安全属性以授予Everyone用户组的所有标准权限,包括和不包含inheritance句柄等。它们似乎都没有解决它。 这是基本代码…… SECURITY_ATTRIBUTES sa; sa.nLength = sizeof( SECURITY_ATTRIBUTES ); sa.bInheritHandle = TRUE; sa.lpSecurityDescriptor = NULL; const char* _szSourceFile = “c:\\temp\\test\\src\\foo.cpp”; char szOptions[ 2048 ]; sprintf_s( szOptions, “c:\\temp\\compile\\cl.exe ” “/Gd ” “/Fo\”c:\\temp\\test\\out\\\” ” “/Fe\”c:\\temp\\test\\out\\\” ” “/Fd\”c:\\temp\\test\\out\\\” ” “/D \”WIN32\” ” “/D \”_DEBUG\” ” “/D \”_WINDOWS\” ” “/D […]

Visual Studio C ++与psapi.lib的链接

我编写了一个C程序,它调用psapi.h中定义的函数GetModuleInformation() 我正在使用Microsoft Visual Studio C ++命令行编译器(cl.exe)来编译和链接程序。 我已经包含了psapi.h头文件: #include 当我尝试编译时使用: cl program.c 它生成目标文件,但在链接阶段失败并出现错误: program.obj : error LNK2019: unresolved external symbol _GetModuleInformation@16 ref erenced in function _main program.exe : fatal error LNK1120: 1 unresolved externalsprogram.obj : error LNK2019: unresolved external symbol _GetModuleInformation@16 ref 我还将psapi.lib文件放在放置源代码文件(program.c)的同一文件夹中,但即便如此,我也会收到与上面相同的错误消息。 如何使用命令行编译器(cl.exe)成功链接它?