Shell.ShellExecute メソッド

指定したファイルに対して指定した操作を実行します。

構文

Jscript:

iRetVal = Shell.ShellExecute(
  sFile,
  [ vArguments ],
  [ vDirectory ],
  [ vOperation ],
  [ vShow ]
);

Vbscript:

iRetVal = Shell.ShellExecute( _
  sFile, _
  [ ByVal vArguments ], _
  [ ByVal vDirectory ], _
  [ ByVal vOperation ], _
  [ ByVal vShow ] _
)

VB:

Shell.ShellExecute( _
  ByVal sFile As BSTR, _
  [ ByVal vArguments As Variant ], _
  [ ByVal vDirectory As Variant ], _
  [ ByVal vOperation As Variant ], _
  [ ByVal vShow As Variant ] _
) As Integer

パラメーター

sFile [in]

種類: BSTR

ShellExecutevOperation で指定したアクションを実行するファイルの名前を含む String

vArguments [in, optional]

Type: Variant

操作のパラメーター値を含む文字列。

vDirectory [in, optional]

Type: Variant

sFile で指定されたファイルを含むディレクトリの完全修飾パス。 このパラメーターを指定しない場合は、現在の作業ディレクトリが使用されます。

vOperation [in, optional]

Type: Variant

実行する操作。 この値は、ファイルでサポートされている動詞文字列のいずれかに設定されます。 動詞の説明については、「解説」セクションを参照してください。 このパラメーターを指定しない場合は、既定の操作が実行されます。

vShow [in, optional]

Type: Variant

アプリケーション ウィンドウを最初に表示する方法に関する推奨事項。 アプリケーションは、この推奨事項を無視できます。 このパラメーターには、次の値のいずれかを指定できます。 このパラメーターを指定しない場合、アプリケーションはその既定値を使用します。

説明
0
非表示のウィンドウでアプリケーションを開きます。
1
通常のウィンドウでアプリケーションを開きます。 ウィンドウが最小化または最大化されている場合は、元のサイズと位置に復元されます。
2
最小化されたウィンドウでアプリケーションを開きます。
3
最大化されたウィンドウでアプリケーションを開きます。
4
ウィンドウが最新のサイズと位置でアプリケーションを開きます。 アクティブなウィンドウはアクティブなままです。
5
ウィンドウを現在のサイズと位置でアプリケーションを開きます。
7
最小化されたウィンドウでアプリケーションを開きます。 アクティブなウィンドウはアクティブなままです。
10
アプリケーションで指定された既定の状態のウィンドウでアプリケーションを開きます。

 

解説

このメソッドは、ファイルのショートカット メニューに関連付けられているコマンドの 1 つを起動するのと同じです。 各コマンドは動詞文字列で表されます。 サポートされる動詞のセットは、ファイルによって異なります。 最も一般的にサポートされる動詞は "open" です。これは通常、既定の動詞でもあります。 その他の動詞は、特定の種類のファイルでのみサポートされる場合があります。 シェル動詞の詳細については、「 アプリケーションの起動 」または 「ショートカット メニューの拡張」を参照してください。

現在、このメソッドは Microsoft Visual Basic では使用できません。

次の例は、 ShellExecute を使用してメモ帳を開く方法を示しています。 JScript と VBScript の使用法が表示されます。

Jscript:

function ShellExecuteJS()
{
    var objShell = new ActiveXObject("Shell.Application");
    objShell.ShellExecute("notepad.exe", "", "", "open", 1);
}

Vbscript:

Function ShellExecuteVB()
    Dim objShell
    Set objShell = CreateObject("Shell.Application")
    Call objShell.ShellExecute("notepad.exe", "", "", "open", 1)
End Function

必要条件

要件
サポートされている最小のクライアント
Windows 2000 Professional、Windows XP [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2003 [デスクトップ アプリのみ]
Header
Shldisp.h
IDL
Shldisp.idl
[DLL]
Shell32.dll (バージョン 5.0 以降)