次の方法で共有


DlgDirSelectComboBoxExW 関数 (winuser.h)

DlgDirListComboBox 関数を使用して入力されたコンボ ボックスから現在の選択範囲を取得します。 選択内容は、ドライブ文字、ファイル、またはディレクトリ名として解釈されます。

構文

BOOL DlgDirSelectComboBoxExW(
  [in]  HWND   hwndDlg,
  [out] LPWSTR lpString,
  [in]  int    cchOut,
  [in]  int    idComboBox
);

パラメーター

[in] hwndDlg

種類: HWND

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

[out] lpString

種類: LPTSTR

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

[in] cchOut

型: int

lpString パラメーターが指すバッファーの長さ (文字数)。

[in] idComboBox

型: int

ダイアログ ボックス内のコンボ ボックス コントロールの整数識別子。

戻り値

種類: BOOL

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

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

解説

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

DlgDirSelectComboBoxEx 関数は、コンボ ボックスから複数のファイル名を返すことを許可しません。

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

DlgDirSelectComboBoxEx は、CB_GETCURSELメッセージとCB_GETLBTEXTメッセージをコンボ ボックスに送信します。

この関数は、3 種類のコンボ ボックス (CBS_SIMPLE、CBS_DROPDOWNCBS_DROPDOWNLIST) すべてで使用できます。

セキュリティの警告: この関数を不適切に使用すると、アプリケーションに問題が発生する可能性があります。 たとえば、ANSI バージョンと Unicode バージョンの両方に対して nCount パラメーターを正しく設定する必要があります。 これを行わないと、バッファー オーバーフローが発生する可能性があります。 続行する前に 、「セキュリティに関する考慮事項: Microsoft Windows コントロール 」を確認する必要があります。

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

注意

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

要件

要件
サポートされている最小のクライアント Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
対象プラットフォーム Windows
ヘッダー winuser.h (Windows.h を含む)
Library User32.lib
[DLL] User32.dll

こちらもご覧ください

CB_GETCURSEL

CB_GETLBTEXT

DlgDirListComboBox

参照