質問: 拡張子に関連ついているプログラムの特定 現在、いくつかの拡張子(bmpやpdfなど)に関連付いているプログラムのアイコンを取得しようとしています。 アイコン取得自体は、プログラムパスがあれば”extractassociatedicon”等でいけそうと目星はついています。 ですが、実ファイルがなく、拡張子(bmpやpdfなど)から関連付いているプログラムパスもしくはアイコンを取得するよい方法はないでしょうか? レジストリに登録されている拡張子情報からプログラムを取得し、そのプログラムを別のキーから検索するなどでもいけそうですが、けっこう大変そうなので・・・ レジストリの拡張子情報は、「hkey_current_user→software→microsoft→windows→currentversion→explorer→fileexts」から取得しようと思っています。 shgetfileinfoやextractassociatediconに拡張子を渡してみましたが取れなさそうでした。使い方が間違ってるのかもしれません。(exeパスからはokでした) なにかご存じの方がいらっしゃいましたら、お教えください!よろしくお願いします。
回答: 拡張子文字列(".bmp" とか ".pdf")からアイコンデータを取得できれば良い、ということでしょうか。 特に私自身は詳しくはないのですが、以下のサイトにサンプルがあるようです(iconfromextension())。 shgetfileinfo() で問題なさそうですね、引数をお間違えではないでしょうか。