VC程序设计中CreateProcess用法注意事项
对于windows程序设计来说,启动一个进程有三种方法:WinExec,ShellExecute,CreateProcess。这里仅对CreateProcess的用法加以说明。
对于CreateProcess的详细参数读者可以查MSDN和《WindowsAPI参考手册》,这里不具体说明。下面给出常用的方法:
STARTUPINFOstartup;
ZeroMemory(&startup,sizeof(startup));
startup.cb=sizeof(startup);
ZeroMemory(&m_procInfo,sizeof(m_procInfo));
//初始化结果体是必须的,否则会异常
BOOLbRetVal=::CreateProcess((LPCWSTR)strProcPath,
NULL,
NULL,
NULL,
FALSE,
0,
NULL,
NULL,
&startup,
&m_procInfo);
if(!bRetVal)
{
AfxMessageBox(_T("启动失败!"));
}
说明:
第一个参数是应用程序的全路径,第二个参数是命令行参数。如果第一个参数为空,就必须在第二个参数中指定应用程序的路径。
如果启动的进程与当前进程不再同一个目录下,则第八个参数必须指定,第八个参数为启动的进程所在的路径。否则不能成功启动进程。如下所示:
BOOLbRetVal=::CreateProcess((LPCWSTR)strProcPath,
NULL,
NULL,
NULL,
FALSE,
0,
NULL,
(LPCWSTR)strProcFolder,
&startup,
&m_procInfo);
if(!bRetVal)
{
AfxMessageBox(_T("启动失败!"));
}热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下