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 でサポートされています。 これを使用するには、「 Microsoft Layer for Unicode on Windows Me/98/95 Systems」で説明されているように、特定のファイルをアプリケーションに追加する必要があります。
例
例については、「 単一選択リスト ボックスでのディレクトリ リストの作成」を参照してください。
注意
winuser.h ヘッダーは、UNICODE プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして DlgDirSelectEx を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | winuser.h (Windows.h を含む) |
Library | User32.lib |
[DLL] | User32.dll |
こちらもご覧ください
参照