DlgDirSelectExA-Funktion (winuser.h)
Ruft die aktuelle Auswahl aus einem Listenfeld für die Einzelauswahl ab. Es wird davon ausgegangen, dass das Listenfeld von der DlgDirList-Funktion ausgefüllt wurde und dass die Auswahl ein Laufwerkbuchstabe, Dateiname oder Verzeichnisname ist.
Syntax
BOOL DlgDirSelectExA(
[in] HWND hwndDlg,
[out] LPSTR 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 des Puffers, auf den lpString in TCHARs verweist.
[in] idListBox
Typ: int
Der Bezeichner eines Listenfelds im Dialogfeld.
Rückgabewert
Typ: BOOL
Wenn die aktuelle Auswahl ein Verzeichnisname ist, ist der Rückgabewert ungleich null.
Wenn die aktuelle Auswahl kein Verzeichnisname ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Die DlgDirSelectEx-Funktion kopiert die Auswahl in den Puffer, auf den der lpString-Parameter verweist. Wenn die aktuelle Auswahl ein Verzeichnisname oder Laufwerkbuchstabe ist, entfernt DlgDirSelectEx die umschließenden eckigen Klammern (und Bindestriche für Laufwerkbuchstaben), sodass der Name oder Der Buchstabe bereit ist, in einen neuen Pfad eingefügt zu werden. 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 abschließenden NULL-Zeichen.
DlgDirSelectEx sendet LB_GETCURSEL und LB_GETTEXT Nachrichten an das Listenfeld. Die Funktion lässt nicht zu, dass mehr als ein Dateiname aus einem Listenfeld zurückgegeben wird. Das Listenfeld darf kein Listenfeld mit mehrfacher Auswahl sein. Wenn dies der Fall ist, gibt diese Funktion keinen Nullwert zurück, und lpString bleibt unverändert.
Windows 95 oder höher: DlgDirSelectExW wird von Microsoft Layer for Unicode unterstützt. Um dies zu verwenden, müssen Sie Ihrer Anwendung bestimmte Dateien hinzufügen, wie in Microsoft Layer for Unicode auf Windows Me/98/95-Systemen beschrieben.
Beispiele
Ein Beispiel finden Sie unter Erstellen einer Verzeichnisauflistung in einem Listenfeld für die Einzelauswahl.
Hinweis
Der winuser.h-Header definiert DlgDirSelectEx als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch 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 |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2003 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | winuser.h (windows.h einschließen) |
Bibliothek | User32.lib |
DLL | User32.dll |
Weitere Informationen
Referenz