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
Referenz-