当前位置:  编程技术>c/c++/嵌入式

VC程序设计中CreateProcess用法注意事项

    来源: 互联网  发布时间:2014-10-26

    本文导语:  对于windows程序设计来说,启动一个进程有三种方法:WinExec,ShellExecute,CreateProcess。这里仅对CreateProcess的用法加以说明。 对于CreateProcess的详细参数读者可以查MSDN和《Windows API参考手册》,这里不具体说明。下面给出常用的...

对于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( "启动失败!" ) );
}

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 学习JAVA程序设计,有没有《WINDOWS程序设计》这样的经典书籍?
  • 学了linux程序设计后能不能编写出应用程序
  • 对于一个程序员来说,学习linux程序设计和unix编程到底有什么好处
  • JSP和Servlet程序设计使用专辑---的程序代码哪有?
  • 初学linux程序设计,有个程序找不到思路,跪求大神指点!
  • trap '' INT..为什么ctrl+c,不会终止脚本程序呢。这是Linux程序设计里面的例子。
  • 一个老程序员的观点:Linux程序/内核设计是一门技术,Windows下的可扩展、可复用架构设计是一门艺术!
  • 最进想学习LINUX程序设计,想了解一下在LINUX下的C++程序开发工具有哪些?有快速做界面的那种吗?
  • 程序设计语言 Objeck
  • 关于《Windows程序设计》的问题
  • 请推荐几本经典的linux下程序设计的书籍~
  • 《linux程序设计》中的一个问题
  • linux中大量的全局变量怎么体现结构化的程序设计?
  • 机械工业的《java程序设计教程》好吗?
  • 请问谁有<linux 程序设计(第二版)>的中文版
  • 求gnu/linux编程指南,linux程序设计二本书
  • 请各位推荐一下服务器端程序设计的书籍.谢谢了~~~
  • 去深圳书城竟然买不带《linux程序设计》
  • glade的程序设计不编译啊??
  • 初学linux程序设计的问题


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3