Freigeben über


DlgDirSelectExW-Funktion (winuser.h)

Ruft die aktuelle Auswahl aus einem Listenfeld mit einer Auswahl ab. Es wird davon ausgegangen, dass das Listenfeld von der funktion DlgDirList ausgefüllt wurde und dass es sich bei der Auswahl um einen Laufwerkbuchstaben, Dateinamen oder Verzeichnisnamen handelt.

Syntax

BOOL DlgDirSelectExW(
  [in]  HWND   hwndDlg,
  [out] LPWSTR lpString,
  [in]  int    chCount,
  [in]  int    idListBox
);

Parameter

[in] hwndDlg

Typ: HWND-

Ein Handle für das Dialogfeld, das das Listenfeld enthält.

[out] lpString

Typ: LPTSTR-

Ein Zeiger auf einen Puffer, der den ausgewählten Pfad empfängt.

[in] chCount

Typ: int

Die Länge in TCHARsdes Puffers, auf den lpStringverweist.

[in] idListBox

Typ: int

Der Bezeichner eines Listenfelds im Dialogfeld.

Rückgabewert

Typ: BOOL-

Wenn es sich bei der aktuellen Auswahl um einen Verzeichnisnamen handelt, ist der Rückgabewert ungleich Null.

Wenn es sich bei der aktuellen Auswahl nicht um einen Verzeichnisnamen handelt, ist der Rückgabewert null. Rufen Sie GetLastErrorauf, um erweiterte Fehlerinformationen zu erhalten.

Bemerkungen

Die DlgDirSelectEx-Funktion kopiert die Auswahl in den Puffer, auf den der lpString-Parameter verweist. Wenn es sich bei der aktuellen Auswahl um einen Verzeichnisnamen oder einen Laufwerkbuchstaben handelt, entfernt DlgDirSelectEx die umschließenden eckigen Klammern (und Bindestriche) für Laufwerkbuchstaben, damit der Name oder Buchstabe in einen neuen Pfad eingefügt werden kann. Wenn keine Auswahl vorhanden ist, ändert sich lpString- nicht. Wenn die Zeichenfolge so lang oder länger als der Puffer ist, enthält der Puffer die abgeschnittene Zeichenfolge mit einem endenden NULL-Zeichen.

DlgDirSelectEx sendetLB_GETCURSEL und LB_GETTEXT Nachrichten an das Listenfeld. Die Funktion lässt nicht zu, dass mehrere Dateinamen aus einem Listenfeld zurückgegeben werden. Das Listenfeld darf kein Listenfeld mit mehrfacher Auswahl sein. Wenn dies der Fall ist, gibt diese Funktion keinen Nullwert zurück, und lpString- unverändert bleibt.

Windows 95 oder höher: DlgDirSelectExW- wird von Microsoft Layer für Unicode unterstützt. Um dies zu verwenden, müssen Sie Ihrer Anwendung bestimmte Dateien hinzufügen, wie in Microsoft Layer for Unicode unter Windows Me/98/95 Systemsbeschrieben.

Beispiele

Ein Beispiel finden Sie unter Erstellen eines Verzeichniseintrags in einem Listenfeld mit einer Auswahl.

Anmerkung

Der winuser.h-Header definiert DlgDirSelectEx als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows Vista [nur Desktop-Apps]
mindestens unterstützte Server- Windows Server 2003 [Nur Desktop-Apps]
Zielplattform- Fenster
Header- winuser.h (enthalten Windows.h)
Library User32.lib
DLL- User32.dll

Siehe auch

DlgDirList-

DlgDirListComboBox

DlgDirSelectComboBoxEx

LB_GETCURSEL

LB_GETTEXT

Referenz-