次の方法で共有


DlgDirSelectExA 関数 (winuser.h)

単一選択リスト ボックスから現在の選択範囲を取得します。 リスト ボックスが DlgDirList 関数によって入力されていること、および選択内容がドライブ文字、ファイル名、またはディレクトリ名であることを前提としています。

構文

BOOL DlgDirSelectExA(
  [in]  HWND  hwndDlg,
  [out] LPSTR lpString,
  [in]  int   chCount,
  [in]  int   idListBox
);

パラメーター

[in] hwndDlg

型: HWND

リスト ボックスを含むダイアログ ボックスのハンドル。

[out] lpString

型: LPTSTR

選択したパスを受け取るバッファーへのポインター。

[in] chCount

型: int

lpStringが指すバッファーの長さ (TCHAR)

[in] idListBox

型: int

ダイアログ ボックス内のリスト ボックスの識別子。

戻り値

型: BOOL

現在の選択範囲がディレクトリ名の場合、戻り値は 0 以外です。

現在の選択範囲がディレクトリ名でない場合、戻り値は 0 になります。 拡張エラー情報を取得するには、GetLastError呼び出します。

備考

DlgDirSelectEx 関数は、選択内容を、lpString パラメーターが指すバッファーにコピーします。 現在の選択範囲がディレクトリ名またはドライブ文字の場合、DlgDirSelectEx は、名前または文字を新しいパスに挿入する準備が整うために、囲まれた角かっこ (およびドライブ文字の場合はハイフン) を削除します。 選択されていない場合、lpString は変更されません。

文字列がバッファーの長さ以上の場合、バッファーには、終端の null 文字を含む切り捨てられた文字列が含まれます。

DlgDirSelectEx LB_GETCURSEL メッセージと LB_GETTEXT メッセージをリスト ボックスに送信します。 この関数は、リスト ボックスから複数のファイル名を返すことを許可しません。 リスト ボックスは複数選択リスト ボックスにすることはできません。 その場合、この関数は 0 の値を返さないため、lpString 変更されません。

Windows 95 以降の: DlgDirSelectExW は、Microsoft Layer for Unicode でサポートされています。 これを使用するには、「Windows Me/98/95 Systemsの Unicode 用 Microsoft Layer で説明されているように、特定のファイルをアプリケーションに追加する必要があります。

例については、「単一選択リスト ボックスでのディレクトリ一覧の作成」を参照してください。

手記

winuser.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして DlgDirSelectEx を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows Vista [デスクトップ アプリのみ]
サポートされる最小サーバー Windows Server 2003 [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー winuser.h (Windows.h を含む)
ライブラリ User32.lib
DLL User32.dll

関連項目

DlgDirList の

DlgDirListComboBox を する

DlgDirSelectComboBoxEx の

LB_GETCURSEL

LB_GETTEXT

リファレンス