ShellExecute轉載

平時在delphi寫代碼的過程中總是能遇到ShellExecute函數,於是索性將它的使用方法整理一下,由於我在微軟的站點上也沒能查到個詳解(當然我查的中文版,俺菜嘛)

ShellExecute函數原型及參數含義例如以下:

  function ShellExecute(hWnd: HWND; Operation, FileName, Parameters,Directory: PChar; ShowCmd: Integer): HINST; stdcall;

  ●hWnd:用於指定父窗體句柄。當函數調用過程出現錯誤時,它將作爲Windows消息窗體的父窗體。比如,能夠將其設置爲應用程序主窗體句柄,即 Application.Handle,也能夠將其設置爲桌面窗體句柄(用GetDesktopWindow函數獲得)。

   ●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 沒有關聯不論什麼應用程式。 

 

轉載自:https://www.cnblogs.com/mengfanrong/p/4317849.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章