Método IPersistFile::GetCurFile (objidl.h)

Recupera el nombre actual del archivo asociado al objeto . Si no hay ningún archivo de trabajo actual, este método recupera la solicitud de guardado predeterminada para el objeto .

Sintaxis

HRESULT GetCurFile(
  [out] LPOLESTR *ppszFileName
);

Parámetros

[out] ppszFileName

Ruta de acceso para el archivo actual o el símbolo del nombre de archivo predeterminado (por ejemplo, *.txt). Si se produce un error, ppszFileName se establece en NULL.

Valor devuelto

Este método puede devolver los siguientes valores.

Código devuelto Descripción
S_OK
Se devolvió correctamente una ruta de acceso absoluta válida.
S_FALSE
Se devolvió el símbolo del sistema de guardado predeterminado.
E_OUTOFMEMORY
Error en la operación debido a memoria insuficiente.
E_FAIL
Error en la operación debido a algún motivo distinto de memoria insuficiente.

Comentarios

Este método asigna memoria para la cadena devuelta en el parámetro ppszFileName mediante el método IMalloc::Alloc . El autor de la llamada es responsable de llamar al método IMalloc::Free para liberar la cadena. Tanto el llamador como este método usan el asignador de tareas OLE proporcionado por una llamada a CoGetMalloc.

El nombre de archivo devuelto en ppszFileName es el nombre especificado en una llamada a IPersistFile::Load cuando se cargó el documento; o en IPersistFile::SaveCompleted si el documento se guardó en otro archivo.

Si el objeto no tiene un archivo de trabajo actual, debe proporcionar el símbolo del sistema predeterminado que se mostraría en un cuadro de diálogo Guardar como . Por ejemplo, la solicitud de guardado predeterminada para un objeto de procesador de texto podría ser .

"*.txt".

Notas a los autores de llamadas

OLE no llama al método GetCurFile . Las aplicaciones no llamarían a este método a menos que también llamen a los métodos save de esta interfaz.

Al guardar el objeto, puede llamar a este método antes de llamar a IPersistFile::Save para determinar si el objeto tiene un archivo asociado. Si este método devuelve S_OK, puede llamar a IPersistFile::Save con un nombre de archivo NULL y un valor TRUE para el parámetro fRemember para indicar al objeto que se guarde en su archivo actual. Si este método devuelve S_FALSE, puede usar el símbolo del sistema de guardado devuelto en el parámetro ppszFileName para pedir al usuario final que proporcione un nombre de archivo. A continuación, puede llamar a IPersistFile::Save con el nombre de archivo que el usuario escribió para realizar una operación Guardar como .

Requisitos

Requisito Value
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado objidl.h

Consulte también

IPersistFile