在我使用的C++/CLI程序中
System::Diagnostics::Process::Start("D:\\users\\Z\\project1\\Sent_0.93\\plotCon\\tester\\bin\\Debug\\tester.exe","20 D:\users\Z\project1\Bright20");调用tester.exe,这是另一个用C#编写的项目(但我认为它在这里并不重要),那么现在发生了一些奇怪的事情。如果我使用项目设置中给出的命令行参数调试C#程序,它可以正常工作。如果我从开始菜单->运行调用这个C#程序,它也工作得很好。但是在上面的代码行中,C#程序被启动了,但是它的行为非常奇怪。因此,问题是为什么以及如何更改C++代码,使其调用与我在"Start->run“中调用的效果完全相同。
谢谢
发布于 2011-06-29 22:05:02
问题是您的arguments参数字符串-- "20 D:\users\Z\project1\Bright20"具有嵌入的转义字符,您需要使用双反斜杠,就像您对fileName参数所做的那样:
System::Diagnostics::Process::Start(
"D:\\users\\Z\\project1\\Sent_0.93\\plotCon\\tester\\bin\\Debug\\tester.exe",
"20 D:\\users\\Z\\project1\\Bright20"
); // ^^ ^^ ^^ ^^https://stackoverflow.com/questions/6520848
复制相似问题