| ||||||||||||||
|
対象ファイルに関連付けられたアプリケーションを取得 (要SHELL32.DLL)
| ||||||||||||||
exec命令の第2パラメータにモード16を指定すると関連付けられたアプリケーションで実行されます。 今回紹介するのは、「指定したデータファイルに関連付けられた実行ファイルのパスを取得する」もので、 API関数のFindExecutableを使用しています。 このAPI関数で取得された実行ファイルパスの途中に半角スペースを含んでいると、 文字列終端を示すNULLコードに置き換えられるバグがあると書かれていますが、 試したところ半角スペースを含んでいても問題は再現しませんでした。 環境によって再現する可能性もありますので実際に使う場合には注意が必要です。 「ファイルパスから実行ファイルのパスを取得する」のではなく、 フォルダオプションにあるような「拡張子からファイルのパスを取得する」場合はコチラをご覧ください。 | ||||||||||||||
![]() | ||||||||||||||
| ||||||||||||||
![]() | ||||||||||||||
| ||||||||||||||