GetSaveFileNameA-Funktion (commdlg.h)

[Ab Windows Vista wurden die allgemeinen Dialogfelder Öffnen und Speichern unter durch das Dialogfeld "Gemeinsame Elemente" ersetzt. Es wird empfohlen, anstelle dieser Dialogfelder aus der Common Dialog Box Library die API für allgemeine Elemente zu verwenden.]

Erstellt ein Dialogfeld Speichern , in dem der Benutzer das Laufwerk, das Verzeichnis und den Namen einer zu speichernden Datei angeben kann.

Syntax

BOOL GetSaveFileNameA(
  [in, out] LPOPENFILENAMEA unnamedParam1
);

Parameter

[in, out] unnamedParam1

Typ: LPOPENFILENAME

Ein Zeiger auf eine OPENFILENAME-Struktur , die Informationen enthält, die zum Initialisieren des Dialogfelds verwendet werden. Wenn GetSaveFileName zurückgegeben wird, enthält diese Struktur Informationen zur Dateiauswahl des Benutzers.

Rückgabewert

Typ: BOOL

Wenn der Benutzer einen Dateinamen angibt und auf die Schaltfläche OK klickt und die Funktion erfolgreich ist, ist der Rückgabewert ungleich null. Der Puffer, auf den der lpstrFile-Member der OPENFILENAME-Struktur verweist, enthält den vollständigen Pfad und dateinamen, der vom Benutzer angegeben wird.

Wenn der Benutzer das Dialogfeld Speichern abbricht oder schließt oder ein Fehler auftritt, z. B. wenn der Dateinamenpuffer zu klein ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie die CommDlgExtendedError-Funktion auf, die einen der folgenden Werte zurückgeben kann:

Hinweise

Das Dialogfeld speichern im Explorer-Format, das Benutzeroberflächenfeatures bereitstellt, die dem Windows-Explorer ähneln. Sie können eine OFNHookProc-Hookprozedur für ein Explorer Dialogfeld Speichern bereitstellen. Um die Hookprozedur zu aktivieren, legen Sie die OFN_EXPLORER - und OFN_ENABLEHOOK-Flags im Flags-Member der OPENFILENAME-Struktur fest, und geben Sie die Adresse der Hookprozedur im lpfnHook-Member an.

Windows unterstützt weiterhin Dialogfelder im alten Stil zum Speichern für Anwendungen, die eine Benutzeroberfläche beibehalten möchten, die mit der Benutzeroberfläche im alten Stil konsistent ist. Um das Dialogfeld Speichern im alten Stil anzuzeigen, aktivieren Sie eine OFNHookProcOldStyle-Hookprozedur , und stellen Sie sicher, dass das flag OFN_EXPLORER nicht festgelegt ist.

Beispiele

Ein Beispiel finden Sie unter Erstellen einer erweiterten Metadatei.

Hinweis

Der commdlg.h-Header definiert GetSaveFileName 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 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile commdlg.h (windows.h einschließen)
Bibliothek Comdlg32.lib
DLL Comdlg32.dll
APIs ext-ms-win-shell-comdlg32-l1-1-1 (eingeführt in Windows 10, Version 10.0.14393)

Weitere Informationen

CommDlgExtendedError

Allgemeine Dialogfeldbibliothek

Konzept

GetOpenFileName

OFNHookProc

OFNHookProcOldStyle

OPENFILENAME

Referenz