手机
当前位置:查字典教程网 >编程开发 >C语言 >VC程序设计中CreateProcess用法注意事项
VC程序设计中CreateProcess用法注意事项
摘要:对于windows程序设计来说,启动一个进程有三种方法:WinExec,ShellExecute,CreateProcess。这里仅对Cre...

对于windows程序设计来说,启动一个进程有三种方法:WinExec,ShellExecute,CreateProcess。这里仅对CreateProcess的用法加以说明。

对于CreateProcess的详细参数读者可以查MSDN和《Windows API参考手册》,这里不具体说明。下面给出常用的方法:

STARTUPINFO startup; ZeroMemory( &startup, sizeof(startup) ); startup.cb = sizeof(startup); ZeroMemory( &m_procInfo, sizeof(m_procInfo) ); // 初始化结果体是必须的,否则会异常 BOOL bRetVal = ::CreateProcess( (LPCWSTR)strProcPath, NULL, NULL, NULL, FALSE, 0, NULL, NULL, &startup, &m_procInfo ); if ( !bRetVal ) { AfxMessageBox( _T( "启动失败!" ) ); }

说明:

第一个参数是应用程序的全路径,第二个参数是命令行参数。如果第一个参数为空,就必须在第二个参数中指定应用程序的路径。

如果启动的进程与当前进程不再同一个目录下,则第八个参数必须指定,第八个参数为启动的进程所在的路径。否则不能成功启动进程。如下所示:

BOOL bRetVal = ::CreateProcess( (LPCWSTR)strProcPath, NULL, NULL, NULL, FALSE, 0, NULL, (LPCWSTR)strProcFolder, &startup, &m_procInfo ); if ( !bRetVal ) { AfxMessageBox( _T( "启动失败!" ) ); }

【VC程序设计中CreateProcess用法注意事项】相关文章:

C++中关于Crt的内存泄漏检测的分析介绍

C++函数中return语句的使用方法

内核线程优先级设置的方法介绍

深入探讨:main函数执行完毕后,是否可能会再执行一段代码?

Qt之ui在程序中的使用-多继承法介绍

C语言小程序 杨辉三角示例代码

c语言中static和extern的用法详细解析

VC中Tab control控件的用法详细解析

C语言中const,volatile,restrict的用法总结

c/c++语言位域注意事项分析

精品推荐
分类导航