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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM