繁体   English   中英

C ++ ShellExecute与cmd.exe的工作方式不同

[英]C++ ShellExecute is not working the same way as cmd.exe

我正在运行这个命令

w_icrcom.exe j11 hola

从命令提示符,它正常工作,exe正在使用参数运行。

但是,当我从C ++程序执行相同操作时, w_icrcom.exe的行为也不同。 我收到一个错误,说“异常程序终止”。 这只会在您将参数传递给'w_icrcom.exe'时发生。

在我看来,当我执行一个命令时一切都很好,但是当其他程序试图执行相同的命令时,它不起作用,我得到“异常程序执行”错误。

我在ShellExecute上尝试了相同的设置,调用notepad.exe并传递参数,它运行正常。 这个问题有任何合理的解释吗?

string test_var = ("j11 hola");
ShellExecute(0, "open", "C:\\Users\\PC\\Desktop\\My First\\connect\\bin\\w_icrcom.exe", test_var.c_str(), 0, SW_SHOW);

ShellExecute倒数第二个参数是'工作目录'。 可能需要将其设置为cmd提示符中正在运行的当前目录。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM