0

共通ファイル ダイアログを使用してFOS_PICKFOLDERS、ユーザーがファイルを保存する場所を選択できるようにしています。たとえば、ユーザーがライブラリを選択すると、現在のコードは、ファイル システム名を抽出するためLibrary\Documentsに呼び出した時点で失敗します。IShellItem::GetDisplayNameアイテムがファイルの場合、これは成功し、ライブラリのデフォルトの保存場所が使用されます。

私がやりたいことは、シェル アイテムがライブラリであることを検出し、IShellLibraryインターフェイスを取得して、クエリを実行してデフォルトの保存場所を見つけることです。次に、そこにファイルを保存します。

IShellItemがライブラリを参照していることを検出する正しい方法は何ですか?

4

2 に答える 2