我正在使用Windows系统,我已经有了一个可执行的cpp程序,在其文件中有一个a.exe
文件。
现在我正在编写另一个cpp程序,我想在这个程序中执行a.exe
这样的事情:
void ExecuteA_exe()
{
// some function to execute a.exe
}
我尝试了三个功能:WinExec
,ShellExecute
和CreateProcess
但是我得到了相同的结果:没有 - 没有错误但没有运行a.exe
我的a.exe
只是一个简单的cpp程序,当我运行它时,我可以得到控制台窗口。但是如果我运行第二个程序,意味着我尝试调用函数ExecuteA_exe()
来运行a.exe
,但我什么都没得到。我无法看到a.exe
。
这是我的小测试:
int main()
{
ShellExecute(GetDesktopWindow(), "open", "C:\\Users\\Thomas\\Documents\\bloomberg - api\\MarketDataAgent\\Debug\\MarketDataAgent.exe", "", "", SW_SHOWNORMAL);
cout << endl;
system("pause");
return 0;
}
当我运行此程序时,它将以没有任何错误结束,但也没有运行a.exe
。无论如何,我在等a.exe
的控制台,但我无法得到它。
答案 0 :(得分:0)
这是一个愚蠢的问题,但我认为这意味着什么
ShellExecute()
的第三个参数是可执行文件的路径
我做的是我右键点击了a.exe
---&gt;属性---&gt;一般---&gt;位置。
我刚把“位置”复制到我的cpp程序中
但不知何故,在“ - ”之前和之后添加了两个空格,这意味着“bloomberg-api”变成了“bloomberg - api”。
我不知道为什么
总之...