Win32API: ShellExecute

指定したドキュメントを、指定したアプリケーションで開きます。


定義
Declare Function ShellExecute Lib "shell32" Alias "ShellExecuteA" _
   (hWnd As HWND, _
    lpOperation As BytePtr, _
    lpFile As BytePtr, _
    lpParameters As BytePtr, _
    lpDirectory As BytePtr, _
    nShowCmd As Long) As HINSTANCE
hWnd
呼び出し側ウィンドウのハンドルを指定します。

lpOperation
lpFile パラメータにドキュメント ファイルを指定した場合のオペレーションを、以下の文字列から指定します。実行ファイルを指定したときは、NULL を指定します。
文字列説明
"open"ファイルを開きます。
"print"ファイルの内容を印刷します。
"explore"lpFile パラメータで指定されたフォルダをエクスプローラで開きます。

lpFile
オープンするファイル、または実行ファイルへのパスが格納されている文字列を指定します。
lpOperation パラメータで指定するオペレーションが "explore" のときは、フォルダへのパスを指定します。

lpParameters
lpFile パラメータで実行ファイルが指定されたときに、アプリケーションに引き渡すコマンドライン パラメータを指定します。それ以外はNULL を指定します。

lpDirectory
作業ディレクトリが格納されている文字列を指定します。不要なときは、NULL を指定することができます。

nShowCmd
アプリケーションの表示方法を、以下の定数から指定します。
定数説明
SW_HIDEウィンドウを非表示にし、他のウィンドウをアクティブにします。
SW_MAXIMIZEウィンドウを最大化します。
SW_MINIMIZEウィンドウを最小化し、他のウィンドウをアクティブにします。
SW_RESTORE
または SW_SHOWNORMAL
ウィンドウをアクティブにし、元の位置とサイズで表示します。最大化、アイコン化は解除されます。
SW_SHOWウィンドウをアクティブにし、現在の位置とサイズで表示します。
SW_SHOWDEFAULTアプリケーション起動時の表示状態にします。
SW_SHOWMAXIMIZEDウィンドウをアクティブにし、最大化します。
SW_SHOWMINIMIZEDウィンドウをアクティブにし、最小化します。
SW_SHOWMINNOACTIVEウィンドウを最小化します。アクティブなウィンドウは、アクティブな状態を保ちます。
SW_SHOWNAウィンドウを現在の状態で表示します。
SW_SHOWNOACTIVATEウィンドウを直前の位置とサイズで表示します。

戻り値

関数が成功すると、アプリケーションのインスタンス ハンドルが返ります。失敗すると、エラー コードが以下の定数から返ります。
定数説明
0システム リソースが足りません。
SE_ERR_ACCESSDENIEDOS がファイルへのアクセスを拒否しました。
SE_ERR_ASSOCINCOMPLETE関連付けが不正です。
SE_ERR_DDEBUSYDDE 変換がビジー状態です。
SE_ERR_DDEFAIL DDE 変換ができませんでした。
SE_ERR_DDETIMEOUTDDE 変換がタイムアウトになりました。
SE_ERR_DLLNOTFOUND必要な DLL ファイルが見つかりませんでした。
SE_ERR_FNF指定したファイルが見つかりませんでした。
SE_ERR_NOASSOC指定したファイルが関連付けられていませんでした。
SE_ERR_OOMメモリが足りません。
SE_ERR_PNF指定したパスが見つかりませんでした。
SE_ERR_SHARE一般共有エラー。

環境情報

インクルード ファイル: api_shell.sbp 内で定義済み
DLLファイル: shell32.dll