function ShellExecute(hWnd: HWND;
Operation : PChar;
FileName : PChar;
Parameters: PChar;
Directory : PChar;
ShowCmd : Integer): HINST;
引数 | 説明 |
hWnd | 親ウィンドウのハンドル。通常は"Handle"を指定。 |
Operation | 行う操作。指定しない場合は"open"となる。 |
FileName | 操作対象ファイル |
Parameters |
操作対象へのパラメータ。 FileNameが実行形式でない場合は指定しないでください。 |
Directory | 作業ディレクトリ。指定しない場合はカレントディレクトリ。 |
ShowCmd | 表示方法 |
定数 | 説明 |
open |
ファイルを開きます。 実行形式でない場合は関連付けに従ってファイルを開きます。 |
edit | ファイルをエディタで開きます。 |
explore | フォルダをエクスプローラで開きます。 |
ファイルを印刷します。 | |
properties | プロパティを表示します。 |
定数 | 説明 |
SW_SHOWNORMAL | 通常サイズで開く。 |
SW_SHOWMAXIMIZED | 最大化して開く。 |
SW_SW_SHOWMAXIMIZED | 最小化して開く。 |
function ShellExecuteEx(lpExecInfo: PShellExecuteInfoA): Boolean;
TShellExecuteInfo(TShellExecuteInfoA)構造体 | |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
TShellExecuteInfoA = record cbSize: DWORD; fMask: ULONG; Wnd: HWND; lpVerb: PAnsiChar; lpFile: PAnsiChar; lpParameters: PAnsiChar; lpDirectory: PAnsiChar; nShow: Integer; hInstApp: HINST; lpIDList: Pointer; lpClass: PAnsiChar; hkeyClass: HKEY; dwHotKey: DWORD; hIcon: THandle; hProcess: THandle; end; TShellExecuteInfo = TShellExecuteInfoA; |
プロパティ表示の例 | |
---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
uses ShellAPI; //uses節に追加 //*-------------------------------------------*// function TForm1.ShowProperty(const FileName: String): Boolean; var sei :TShellExecuteInfo; begin sei.cbSize := sizeof(sei); sei.fMask := SEE_MASK_NOCLOSEPROCESS or SEE_MASK_INVOKEIDLIST or SEE_MASK_FLAG_NO_UI; sei.lpVerb := 'properties'; sei.Wnd := Handle; sei.lpParameters := nil; sei.lpDirectory := nil; sei.lpIDList := nil; sei.lpFile := PChar(FileName); Result := ShellExecuteEx(@sei); end; |