程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> VC法式設計中CreateProcess用法留意事項

VC法式設計中CreateProcess用法留意事項

編輯:關於C++

VC法式設計中CreateProcess用法留意事項。本站提示廣大學習愛好者:(VC法式設計中CreateProcess用法留意事項)文章只能為提供參考,不一定能成為您想要的結果。以下是VC法式設計中CreateProcess用法留意事項正文


關於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( "啟動掉敗!" ) );
}
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved