外部アプリケーションでファイルオープン
外部アプリケーションでファイルをオープンするにはShellExecute()を使用します。
HINSTANCE ShellExecute(
HWND hwnd,
LPCTSTR lpVerb,
LPCTSTR lpFile,
LPCTSTR lpParameters,
LPCTSTR lpDirectory,
INT nShowCmd
);
|
説明 |
指定されたファイルに対して、指定された操作を実行する。 |
引数 |
- hwnd:
- 親ウィンドウのハンドルを指定する。
- lpVerb:
- 実行するべき操作を保持している、NULLで終わる文字列へのポインタを指定する。次のいずれかの値、もしくはNULLを指定する。
edit |
エディタを開きます。lpFile で指定したファイルが文書ファイルではない場合、この関数は失敗します。 |
explore |
lpFile パラメータで指定したフォルダを選択して、エクスプローラを起動します。 |
open |
lpFile パラメータで指定したファイルを開きます。lpFile パラメータで、文書ファイルまたは実行可能ファイルを指定できます。1 つのフォルダを指定することもできます。 |
print |
lpFile パラメータで指定したファイルを印刷します。lpFile パラメータで文書以外のファイルを指定すると、この関数は失敗します。 |
properties |
ファイルまたはフォルダのプロパティを表示します。 |
- lpFile:
- 操作対象のファイルを指定する。
- lpParameters:
- 操作のパラメータを指定する。
- lpDirectory:
- 既定のディレクトリを指定する。
- nShowCmd:
- 表示方法を指定する。
|
戻り値 |
成功した場合は32より大きい値、失敗した場合は32以下の値を返す。 |
コードは以下のようになります。
void ExecuteOpenFile(
LPCTSTR file ) // ファイル名
{
...
ShellExecute(NULL, "open", file, NULL, NULL, SW_SHOWNORMAL);
...
}