ドナドナされるプログラマのメモ

Windows用アプリのプログラミングメモ

error C2787 このオブジェクトに関連付けられた GUID はありません。

IFileDialogやIFileOpenDialogを使おうとしたら、「error C2787 このオブジェクトに関連付けられた GUID はありません。」というコンパイルエラーが出た。

原因は、元のソフトがWindowsXp以降で動作するようにしていたため。上記インターフェースは、WindowsVista以降でしか使えないのだ。

どのバージョン以降を動作対象にするか指定しているのは、stdafx.hの以下の箇所。

 

gist.github.com

 

 0x0501はWindowsXp以降を動作対象とする設定なので、これをVista以降となる0x0600に書き換えてやる。

 

gist.github.com

 

これでコンパイルが通るようになった。