OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
解決
済み

アプリケーションのインストール先のパスを取得する方法について。

  • 困ってます
  • 質問No.112827
  • 閲覧数2807
  • ありがとう数4
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 81% (18/22)

訳あって、他の製品のアプリケーションを起動するプログラムを作っています。

そこで、アプリケーションのインストール先(パス)を取得する方法はないでしょうか?
(たとえば、EXCELだとF:\Program Files\Microsoft Office\Office\EXCEL.EXE)

APIなどでも調べてみたのですが、見あたりません。フォームを持たないプログラムなので、可能なら自動的に調べてパスを特定したいと考えています。
よろしくお願いします。
通報する
  • 回答数2
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

質問者が選んだベストアンサー

  • 回答No.1
レベル10

ベストアンサー率 50% (72/143)

レジストリにアクセスするしか方法が無いと思いますが。。。
確か\HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\Windows\CurrentVersion\App Paths配下にあったはずです。

VBでレジストリへアクセスする方法は知りませんのでゴメンナサイ。
お礼コメント
shigeki-yy

お礼率 81% (18/22)

早速の回答ありがとうございます。
そうですね。単純にインストール先を取得するには、やっぱりレジストリを参照するしかなさそうな気がします。
投稿日時 - 2001-08-02 15:35:51
-PR-
-PR-

その他の回答 (全1件)

  • 回答No.2
レベル13

ベストアンサー率 59% (729/1235)

(1)ShellExecute関数 そもそもフルパスを取得する必要があるのか? 大抵のアプリはパスなしのEXE名("Excel.exe"等)をShellExecute関数に指定すれば動きます (2)FindExecutable関数 xlsファイルをFindExecutable関数に渡せばExecelのフルパス名が分かります http://www.vbvbvb.com/jp ...続きを読む
(1)ShellExecute関数
そもそもフルパスを取得する必要があるのか?
大抵のアプリはパスなしのEXE名("Excel.exe"等)をShellExecute関数に指定すれば動きます

(2)FindExecutable関数
xlsファイルをFindExecutable関数に渡せばExecelのフルパス名が分かります
http://www.vbvbvb.com/jp/gtips/0951/gFindExecutable.html

(3)SearchPath関数
"Excel.exe"を検索する
http://www.vbvbvb.com/jp/gtips/0101/gSearchPath.html
お礼コメント
shigeki-yy

お礼率 81% (18/22)

回答、ありがとうございます。参考になりました。

しかし。
(1)ShellExecute関数
 残念ながら呼び出したいプログラムは、EXE名のみでは実行できず。
(2)FindExecutable関数
 関連づけられている拡張子もないため、この手も使えず。
 
なので、考えられるとしたら、(3)SearchPath関数ですが、この方法だとローカルディスクの全領域を調べるとしたら、結構な時間がかかってしまうため、あんまり使いたくありません。
 単純にインストール先を取得するには、xruzさんが言うようにレジストリを参照するしかないような気がします。
投稿日時 - 2001-08-02 15:58:02


このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ