LB_DIR メッセージ

リスト ボックスに表示されるリストに名前を追加します。 メッセージは、指定された文字列とファイル属性のセットに一致するディレクトリとファイルの名前を追加します。 LB_DIR は、マップされたドライブ文字をリスト ボックスに追加することもできます。

パラメーター

wParam

リスト ボックスに追加するファイルまたはディレクトリの属性。 このパラメーターには、次の 1 つ以上の値を指定できます。

説明
DDL_ARCHIVE
アーカイブされたファイルが含まれます。
DDL_DIRECTORY
サブディレクトリを含みます。 サブディレクトリ名は角かっこ ([ ]) で囲まれます。
DDL_DRIVES
マップされたすべてのドライブが一覧に追加されます。 ドライブは [-x-] という形式で一覧表示されます。 ここで、x はドライブ文字です。
DDL_EXCLUSIVE
指定した属性を持つファイルのみが含まれます。 既定では、DDL_READWRITEが指定されていない場合でも、読み取り/書き込みファイルが一覧表示されます。
DDL_HIDDEN
隠しファイルが含まれます。
DDL_READONLY
読み取り専用ファイルが含まれます。
DDL_READWRITE
追加の属性を持たない読み取り/書き込みファイルが含まれます。 これが既定の設定です。
DDL_SYSTEM
システム ファイルが含まれています。

lParam

絶対パス、相対パス、またはファイル名を指定する null で終わる文字列へのポインター。 絶対パスはドライブ文字で始めることができます (例: d:)または UNC 名 (\\ machinename\ sharename など)。

文字列に wParam パラメーターで指定された属性を持つファイル名またはディレクトリが指定されている場合、ファイル名またはディレクトリがリストに追加されます。 ファイル名またはディレクトリ名にワイルドカード文字 (? または *) が含まれている場合、ワイルドカード式に一致し、 wParam パラメーターで指定された属性を持つすべてのファイルまたはディレクトリがリストに追加されます。

戻り値

メッセージが成功した場合、戻り値はリストに追加された姓の 0 から始まるインデックスです。

エラーが発生した場合、戻り値はLB_ERR。 新しい文字列を格納するための領域が不足している場合、戻り値はLB_ERRSPACE。

解説

LB_INITSTORAGE メッセージは、多数の項目 (100 個を超える) を含むリスト ボックスの初期化を高速化するのに役立ちます。 指定された量のメモリを予約して、後続の LB_DIR メッセージが可能な限り短い時間を取るようにします。 wParam パラメーターと lParam パラメーターの推定値を使用できます。 過大評価すると、余分なメモリが割り当てられます。過小評価する場合は、要求された金額を超えるアイテムに対して通常の割り当てが使用されます。

wParam に DDL_DIRECTORY フラグが含まれており、lParam で C:\TEMP\* などの第 1 レベルのディレクトリのすべてのサブディレクトリが指定されている場合、リスト ボックスにはルート ディレクトリの ".." エントリが常に含まれます。 これは、ルート ディレクトリに非表示またはシステム属性があり、DDL_HIDDENフラグとDDL_SYSTEM フラグが指定されていない場合でも当てはまります。 NTFS ボリュームのルート ディレクトリには、非表示属性とシステム属性があります。

リストには、長いファイル名 (存在する場合) が表示されます。

ANSI アプリケーションの場合、システムは、CP_ACPを使用してリスト ボックス内のテキストを Unicode に変換します。 これにより、問題が発生する可能性があります。 たとえば、日本語の Windows の Unicode 以外のリスト ボックスでアクセント付きのローマ文字が文字化けして表示されます。 これを修正するには、アプリケーションを Unicode としてコンパイルするか、所有者が描画したリスト ボックスを使用します。

要件

要件
サポートされている最小のクライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2003 [デスクトップ アプリのみ]
ヘッダー
Winuser.h (Windows.h を含む)

関連項目

DlgDirList