如何通过c ++在指定的程序中运行文件

时间:2013-07-03 10:25:58

标签: c++

我正在尝试使用ShellExecute命令启动程序并通过c ++代码打开文件。我已经包含了windows.h。我写的代码如下:

ShellExecute(GetDesktopWindow(), "open", "C:\\Program Files (x86)\\EMSO\\bin\\emso.exe","C:\\Program Files (x86)\\EMSO\\bin\\MultiCSTR_Reaction.mso", NULL, SW_SHOWNORMAL);

代码打开可执行文件,但无法打开.mso文件。它会生成一个对话框,说''文件'C:\''找不到'','找不到文件'文件'和'文件'(x86)\ EMSO \ bin \ MultiCSTR_Reaction.mso'找不到'。我可以通过命令行打开文件。但是如何通过c ++代码打开。

1 个答案:

答案 0 :(得分:1)

尝试文件的路径(ShellExecute的第四个参数),如下所示:

"\"C:\\Program Files (x86)\\EMSO\\bin\\MultiCSTR_Reaction.mso\""

程序可以使用以空格分隔的多个命令行参数。因此,如果您尝试传递包含空格作为参数的字符串,您会发现它被分成尽可能多的空格。为避免这种情况,字符串需要用引号括起来。