如果之前已经介绍过,我很抱歉,但我无法在StackOverflow上找到它。
基本上我正在尝试运行通常在Windows命令提示符下运行的东西:
msiexec / i file.msi / q
和我的C程序中的其他命令。这可能吗?
感谢。
答案 0 :(得分:3)
在使用Win API ShellExecute的Windows中,您可以最好地控制子进程。然而,Dave18和Pablo提到的另外两种方法也适用。
答案 1 :(得分:2)
尝试C system功能
#include <stdlib.h>
int main ()
{
system ("msiexec /i file.msi /q");
return 0;
}
答案 2 :(得分:1)
答案 3 :(得分:1)
Pablo和Dave是对的,取决于你想做什么。
execl
将新应用程序加载到内存中并运行它来代替当前进程。您的计划将在execl()
来电后结束。
系统在子shell中运行应用程序,您可以检索它的退出状态,但不能检索有关它的stdin / stdout数据的任何信息。
您对开始这个过程后会发生什么感兴趣?