从c+;启动.exe文件+;在窗户里 我尝试从C++ Visual Studio中的代码开始一个程序。 我尝试了这些CMD: system( "\" C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\""); system( "start" C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\""); system( "\" C:\\Program "" Files""(x86)\\scilab-5.3.3\\bin\\WScilex.exe"");
他们都不管用,有人知道怎么做吗从c+;启动.exe文件+;在窗户里 我尝试从C++ Visual Studio中的代码开始一个程序。 我尝试了这些CMD: system( "\" C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\""); system( "start" C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\""); system( "\" C:\\Program "" Files""(x86)\\scilab-5.3.3\\bin\\WScilex.exe"");,c++,C++,他们都不管用,有人知道怎么做吗 提前感谢使用规范的ShellExecuteWinAPI函数。最简单的情况是: ShellExecute(hwnd, "open", "c:\\MyProgramPath\\WScilex.exe", NULL, NULL, 0); 有关更多信息,请参见使用规范的ShellExecuteWinAPI函数。最简单的情况是: ShellExecute(hwnd, "open", "c:\\MyProgramPath\\WScilex.exe", NULL, NULL,
提前感谢使用规范的
ShellExecute
WinAPI函数。最简单的情况是:
ShellExecute(hwnd, "open", "c:\\MyProgramPath\\WScilex.exe", NULL, NULL, 0);
有关更多信息,请参见使用规范的
ShellExecute
WinAPI函数。最简单的情况是:
ShellExecute(hwnd, "open", "c:\\MyProgramPath\\WScilex.exe", NULL, NULL, 0);
有关更多信息,请参见系统
函数将字符串作为命令传递给Windows[cmd.exe]中系统的默认命令解释器
因此,在命令的开头不要有多余的空间:
system( "\"C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\"" );
[cmd.exe]命令解释器对路径中的正斜杠很满意
您的第一次尝试:
system( "\" C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\"");
↑ 在开始时有一个额外的空间。空格很重要,因为命令字符串被引用。但是您需要引号,因为路径包含空格
您的第二次尝试:
system( "start" C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\"");
system( "\" C:\\Program "" Files""(x86)\\scilab-5.3.3\\bin\\WScilex.exe"");
↑ 不应该编译。这不是真正的代码。至少没有成功编译和运行的代码
您的第三次尝试:
system( "start" C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\"");
system( "\" C:\\Program "" Files""(x86)\\scilab-5.3.3\\bin\\WScilex.exe"");
↑ 在开始时有一个额外的空间。空格很重要,因为命令字符串被引用。但是您需要引号,因为路径包含空格。函数将字符串作为命令传递给Windows[cmd.exe]中系统的默认命令解释器
因此,在命令的开头不要有多余的空间:
system( "\"C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\"" );
[cmd.exe]命令解释器对路径中的正斜杠很满意
您的第一次尝试:
system( "\" C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\"");
↑ 在开始时有一个额外的空间。空格很重要,因为命令字符串被引用。但是您需要引号,因为路径包含空格
您的第二次尝试:
system( "start" C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\"");
system( "\" C:\\Program "" Files""(x86)\\scilab-5.3.3\\bin\\WScilex.exe"");
↑ 不应该编译。这不是真正的代码。至少没有成功编译和运行的代码
您的第三次尝试:
system( "start" C:/Program Files (x86)/scilab-5.3.3/bin/WScilex.exe\"");
system( "\" C:\\Program "" Files""(x86)\\scilab-5.3.3\\bin\\WScilex.exe"");
↑ 在开始时有一个额外的空间。空格很重要,因为命令字符串被引用。但是您需要引号,因为路径包含空格。不要像在命令提示符(cmd)中那样尝试使用引号两次。在C++代码中,如果在文件路径中有“空格”,则不需要在引号中指定它。
您应该使用'WinExec'而不是'system',这样控制台窗口就不会显示
e、 g
不要像在命令提示符(cmd)中那样尝试使用引号两次。在C++代码中,如果在文件路径中有“空格”,则不需要在引号中指定它。
您应该使用'WinExec'而不是'system',这样控制台窗口就不会显示
e、 g
我认为hemendra的答案简单而正确!我认为hemendra的答案简单而正确!谢谢,我用了“干杯和hth.-Alf”的建议,很短。别忘了接受你问题的正确答案!谢谢,我用了“干杯和hth.-Alf”的建议,很短。别忘了接受你问题的正确答案!