平時在delphi寫**的過程中總是能遇到shellexecute函式,於是索性將它的使用方法整理一下,由於我在微軟的站點上也沒能查到個詳解(當然我查的中文版,俺菜嘛)
shellexecute函式原型及引數含義例如以下:
function shellexecute(hwnd: hwnd; operation, filename, parameters,directory: pchar; showcmd: integer): hinst; stdcall;
●operation:用於指定要進行的操作。
當中「open」操作表示執行由filename引數指定的程式,或開啟由filename引數指定的檔案或目錄;
「print」操作表示列印由filename引數指定的檔案;
「explore」操作表示瀏覽由filename引數指定的目錄。
當引數設為nil時,表示執行預設操作「open」;
edit 編輯;
find 搜尋
最後這兩個是在別的站點上找到的,沒有驗證是不是這樣。
●filename:用於指定要開啟的檔名稱、要執行的程式檔名稱或要瀏覽的目錄名。
●parameters:若filename引數是乙個可執行程式,則此引數指定命令列引數,否則此引數應為nil或pchar(0)。
●directory:用於指定預設目錄。
●showcmd:若filename引數是乙個可執行程式,則此引數指定程式窗體的初始顯示方式,否則此引數應設定為0
此引數可為下列值之中的乙個
displaystate值含義
hide
0隱藏窗體並啟用其它窗體
shownormal
1啟用並顯示乙個窗體
假設窗體是最小化或最大化, 將其還原到其原始大小和位置 (同 restore)
showminimized
2 啟用窗體並最小化
showmaximized
3啟用窗體並最大化
showminnoactivate
4以近期的大小和位置
顯示窗體
當前活動窗體保持活動
show
5啟用窗體並顯示其當前大小和位置中
minimize
6最小化指定窗體並啟用系統列表中頂層窗體
showminnoactive
7以最小化模式顯示窗體
當前活動窗體保持活動
showna
8以近期的狀態顯示窗體
當前活動窗體保持活動
restore
9啟用窗體並顯示
假設窗體是最小化或最大化,還原到其原始大小和位置 (同shownormal)
補充:maximize :
最大化窗體
若shellexecute函式呼叫成功,則返回值為被執行程式的例項控制代碼。若返回值小於32,則失敗,有下列幾種回應值:
2 錯誤的關聯 (比如:不合法的 url)
29 關聯失敗
30 關聯應用程式忙碌中...
31 沒有關聯不論什麼應用程式。
ShellExecute用法種種
q 如何開啟乙個應用程式?shellexecute this m hwnd,open calc.exe sw show 或 shellexecute this m hwnd,open notepad.exe c mylog.log sw show 正如您所看到的,我並沒有傳遞程式的完整路徑。q 如何...
Delphi中ShellExecute的妙用
shellexecute的功能是執行乙個外部程式 或者是開啟乙個已註冊的檔案 開啟乙個目錄 列印乙個檔案等等 並對外部程式有一定的控制。有幾個api函式都可以實現這些功能,但是在大多數情況下shellexecute是更多的被使用的,同時它並不是太複雜。下面舉例說明它的用法。開啟記事本,並開啟乙個檔案...
Delphi中ShellExecute的妙用
shellexecute的功能是執行乙個外部程式 或者是開啟乙個已註冊的檔案 開啟乙個目錄 列印乙個檔案等等 並對外部程式有一定的控制。有幾個api函式都可以實現這些功能,但是在大多數情況下shellexecute是更多的被使用的,同時它並不是太複雜。下面舉例說明它的用法。開始乙個新的應用程式 開啟...