Delphiメモ

No034:プログラムを指定してファイルを開く(ShellExecute)

しつこくShellExecuteネタ。
結構見落としがちな落とし穴があるのでそれも紹介する。

試しにメモ帳でtest.txtというテキストファイルを開いてみるコード。
第3引数に実行したいアプリケーション、第4引数に開きたいファイルを指定する。

ShellExecute(Self.Handle,PChar('open'),PChar('NOTEPAD.EXE'),
 PChar('"C:\test.txt"'),nil,SWP_SHOWNORMAL);

とまぁここで気をつけて欲しいのが第4引数。
ダブルクォーテーションで括るのを忘れると正常に動作しないことがある。
実験ではメモ帳、NoEditorでは括っていなくても成功したが、
TeraPadではファイルが開かれず実行されただけだった。

トップに戻る

関連ページ