●拡張子に関連付けされた外部EXE名を取得する

****VisualBasicでの宣言です。VBやEXCEL等で使用する際に参考にして下さい
*Declare Function FindExecutable Lib "shell32.dll" Alias "FindExecutableA" _
*(ByVal lpFile As String, ByVal lpDirectory As String, ByVal lpResult As String) As Long
**********************************************
*事前にC:\TEMP.XLSを用意しておきます。この機能は求めたい関連ファイル(目的の拡張子)
*を用意しておかなければなりません。
*********************************************
EXTERN CLONG FindExecutableA(CSTRING,CSTRING,CSTRING) SHELL32.DLL
FL_FILE="TEMP.XLS"
FL_DIR="C:\"
FL_EXE=SPACE(128)
FindExecutableA(FL_FILE,FL_DIR,FL_EXE)
WAIT FL_EXE

FL_FILE="RESETLOG.TXT"
FL_DIR="C:\"
FL_EXE=SPACE(128)
FindExecutableA(FL_FILE,FL_DIR,FL_EXE)
WAIT FL_EXE

「!」コマンドにてEXCELを起動したいとか、画像ファイルJPEGを外部ツールを使用して

表示したいときなど、マシンに用意された別アプリケーションのフルパス名を必要とするときなどに

有効です。

*.EXTERNを使用したこの手法は、動作保証できませんので各個人の責任で使用して下さい。