IFileDialog_SetFolder

ダイアログが開かれる際に、直前のユーザー操作に関わらず常に選択されるフォルダーを設定する。

IFileDialog_SetFolder this, psi

this : [comobj] IFileDialog インターフェースの COM オブジェクト変数
psi : [comobj] 型: IShellItem* フォルダーを表すインターフェースへのポインター。

(プラグイン / モジュール : com_misc.dll)

解説

ダイアログが開かれる際に、直前のユーザー操作に関わらず常に選択されるフォルダーを設定する。

[戻り値]
型: HRESULT このメソッドが成功した場合 S_OK を返す。そうでなければ HRESULT エラーコードを返す。

[備考]

このフォルダーは「最近使用した」フォルダーを上書きする。ダイアログ表示中にこのメソッドが呼び出されると、ダイアログは指定したフォルダーへナビゲートする。一般にこのメソッドの使用は推奨されない。ダイアログボックスを表示する前に
SetFolder
を呼び出すと、ユーザーが直近に保存したり開いたりした場所が表示されない。この動作を必要とする非常に具体的な理由がない限り、これは望ましいユーザー体験とは言えず、避けるべきである。ほとんどの場合
IFileDialog::SetDefaultFolder の方が適している。Windows 7 以降、psi
を介して指定したフォルダーのパスが既知フォルダーの既定パスである場合、ダイアログではその既知フォルダーの現在のパスが使用される。そのパスは
psi
で指定されたものとは異なる場合がある。例えば既知フォルダーがリダイレクトされているなどである。既知フォルダーがライブラリ(仮想フォルダーのドキュメント・ミュージック・ピクチャー・ビデオ)である場合、ダイアログではライブラリのパスが使用される。指定したライブラリが非表示(Windows
8.1 以降の既定ではそうなっている)の場合、ダイアログではライブラリの既定の保存場所(ドキュメントライブラリに対する Microsoft
OneDrive
ドキュメントフォルダーなど)が使用される。これらのマッピングのため、ダイアログで使用されるフォルダー位置は、このメソッドを呼び出したときに指定したものとは完全には一致しない場合がある。

情報

プラグイン / モジュールcom_misc.dll
バージョン1.0
作成日2026/04/16
著作者IronHSP / CsWin32 bridge
URLhttps://github.com/inovia/IronHSP
備考Win32 API の com_misc.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。
タイプ拡張命令
グループWin32API
対応環境
  • Windows 版 HSP
hs ファイルhsphelp\win32_com_misc_gen2.hs