C 中外部程式的呼叫

2021-08-25 13:12:51 字數 1336 閱讀 2903

**:

有三種sdk函式可以呼叫,分別是:

winexec, shellexecute,createprocess

其中以winexec最為簡單,shellexecute比winexec靈活一些,createprocess最為複雜。

winexec 有兩個引數,前乙個指定路徑,後乙個指定顯示方式。

shellexecute 可以指定工作目錄,並且還可以尋找檔案的關聯直接開啟不用載入與檔案關聯的應用程式,shellexecute還可以開啟網頁,啟動相應的郵件關聯傳送郵件等等。

createprocess 一共有十個引數,不過大部分都可以用null代替,它可以指定程序的安全屬性,繼承資訊,類的優先順序等等。如果我們要得到足夠多的關於新的程序的資訊,控制新的程序的細節屬性,若要達到這些目的,就需要使用createprocess函式了。

具體用法如下:

winexec

這個函式最簡單,只有兩個引數,原型如下:

uint winexec(

lpcstr lpcmdline, // 命令路徑

uint ucmdshow // 顯示方式,共有11種,具體可以查閱msdn的showwindow函式

);使用方法如下:

winexec("notepad.exe", sw_show); // 開啟記事本

winexec("d://program files//test",sw_showmaximized); // 以最大化的方式開啟test.exe(注意檔名的大小寫也必須完全一樣)

需要注意的是若用 sw_showmaxmized 方式去載入乙個無最大化按鈕的程式,譬如calc (計算器),就不會出現正常的窗體,但是已經被加到任務列表裡了。

shellexecute

原型如下:

hinstance shellexecute(

hwnd hwnd, //父視窗控制代碼

lpctstr lpoperation, //操作, 開啟方式"edit","explore","open","find","print","null"

lpctstr lpfile, //檔名,前面可加路徑

lpctstr lpparameters, //引數

lpctstr lpdirectory, //預設資料夾

int nshowcmd //顯示方式

);使用方法如下:

shellexecute(null,"open","c:",null,null,sw_shownormal); // 開啟c:/test.txt 檔案

shellexecute(null, "open", "", null, null, sw_shownormal); // 開啟網頁www.google.com

C 中外部程式的呼叫

有三種sdk函式可以呼叫,分別是 winexec,shellexecute,createprocess 其中以winexec最為簡單,shellexecute比winexec靈活一些,createprocess最為複雜。winexec 有兩個引數,前乙個指定路徑,後乙個指定顯示方式。shellexe...

Android中外部程式呼叫方法總結

android中外部程式呼叫方法總結 1.使用自定義action a程式中呼叫的 為 1 intent intent new intent 2 intent.setaction com.test.action.player 3 startactivity intent b程式中的androidman...

C 呼叫外部程式

關於三個sdk函式 winexec,shellexecute,createprocess的其他注意事項 定義標頭檔案 必須定義以下兩個標頭檔案 include 可替換為 windows.h include如果定義了標頭檔案 include 的話就不必定義 include 了。定義路徑 c 中所表示的...