Share via


IPersistFile::GetCurFile-Methode (objidl.h)

Ruft den aktuellen Namen der Datei ab, die dem -Objekt zugeordnet ist. Wenn keine aktuelle Arbeitsdatei vorhanden ist, ruft diese Methode die Standardeingabeaufforderung zum Speichern des Objekts ab.

Syntax

HRESULT GetCurFile(
  [out] LPOLESTR *ppszFileName
);

Parameter

[out] ppszFileName

Der Pfad für die aktuelle Datei oder die Standardeingabeaufforderung für den Dateinamen (z. B. *.txt). Wenn ein Fehler auftritt, wird ppszFileName auf NULL festgelegt.

Rückgabewert

Diese Methode kann die folgenden Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Ein gültiger absoluter Pfad wurde erfolgreich zurückgegeben.
S_FALSE
Die Standardeingabeaufforderung zum Speichern wurde zurückgegeben.
E_OUTOFMEMORY
Der Vorgang ist aufgrund von unzureichendem Arbeitsspeicher fehlgeschlagen.
E_FAIL
Der Vorgang ist aus einem anderen Grund als unzureichendem Arbeitsspeicher fehlgeschlagen.

Hinweise

Diese Methode ordnet Arbeitsspeicher für die im ppszFileName-Parameter zurückgegebene Zeichenfolge mithilfe der IMalloc::Alloc-Methode zu. Der Aufrufer ist für den Aufruf der IMalloc::Free-Methode verantwortlich, um die Zeichenfolge frei zu geben. Sowohl der Aufrufer als auch diese Methode verwenden die OLE-Aufgabenzuweisung, die von einem Aufruf von CoGetMalloc bereitgestellt wird.

Der in ppszFileName zurückgegebene Dateiname ist der Name, der beim Laden des Dokuments in einem Aufruf von IPersistFile::Load angegeben wurde. oder in IPersistFile::SaveCompleted , wenn das Dokument in einer anderen Datei gespeichert wurde.

Wenn das Objekt nicht über eine aktuelle Arbeitsdatei verfügt, sollte es die Standardaufforderung bereitstellen, die in einem Dialogfeld Speichern unter angezeigt wird. Beispielsweise kann die Standardeingabeaufforderung für ein Textverarbeitungsobjekt sein.

"*.txt".

Hinweise für Anrufer

OLE ruft die GetCurFile-Methode nicht auf. Anwendungen würden diese Methode nur aufrufen, wenn sie auch die Speichermethoden dieser Schnittstelle aufrufen.

Beim Speichern des Objekts können Sie diese Methode aufrufen, bevor Sie IPersistFile::Save aufrufen, um zu bestimmen, ob das Objekt über eine zugeordnete Datei verfügt. Wenn diese Methode S_OK zurückgibt, können Sie IPersistFile::Save mit einem NULL-Dateinamen und einem TRUE-Wert für den fRemember-Parameter aufrufen, um das Objekt anzufordern, sich selbst in seiner aktuellen Datei zu speichern. Wenn diese Methode S_FALSE zurückgibt, können Sie die im ppszFileName-Parameter zurückgegebene Speicheraufforderung verwenden, um den Endbenutzer aufzufordern, einen Dateinamen anzugeben. Anschließend können Sie IPersistFile::Save mit dem Dateinamen aufrufen, den der Benutzer eingegeben hat, um einen Vorgang zum Speichern unter auszuführen.

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 objidl.h

Weitere Informationen

Ipersistfile