vc++ 启动子进程

vc++启动子进程

示例:

启动一个带有参数的程序

Execute("c:/1.exe", " -a  ");

执行一个Dos命令

Execute("", " 1.bat cmd /C  ");

 

// 参数 文件绝对路径 和 命令行
bool  Execute(LPCTSTR pszExeFile,LPCTSTR pszCmdLine)
{
    
// 启动子进程
    PROCESS_INFORMATION pi;
    STARTUPINFO si 
= {sizeof(si)};
    BOOL ret 
= CreateProcess(pszExeFile, (LPTSTR)pszCmdLine, NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
    
if (!ret) 
    
{
        
return false;
    }


    
// 关闭子进程的主线程句柄
    CloseHandle(pi.hThread);
    
// 等待子进程的退出
    
//WaitForSingleObject(pi.hProcess, INFINITE);
    
// 获取子进程的退出码
    
//GetExitCodeProcess(pi.hProcess, &dwExitCode);
    
// 关闭子进程句柄
    CloseHandle(pi.hProcess);

    
return true;
}
 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

红火吖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值