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

Recupera o nome atual do arquivo associado ao objeto . Se não houver nenhum arquivo de trabalho atual, esse método recuperará o prompt de salvamento padrão para o objeto .

Sintaxe

HRESULT GetCurFile(
  [out] LPOLESTR *ppszFileName
);

Parâmetros

[out] ppszFileName

O caminho para o arquivo atual ou o prompt de nome de arquivo padrão (como *.txt). Se ocorrer um erro, ppszFileName será definido como NULL.

Retornar valor

Esse método pode retornar os valores a seguir.

Código de retorno Descrição
S_OK
Um caminho absoluto válido foi retornado com êxito.
S_FALSE
O prompt de salvamento padrão foi retornado.
E_OUTOFMEMORY
A operação falhou devido à memória insuficiente.
E_FAIL
A operação falhou devido a algum motivo diferente da memória insuficiente.

Comentários

Esse método aloca memória para a cadeia de caracteres retornada no parâmetro ppszFileName usando o método IMalloc::Alloc . O chamador é responsável por chamar o método IMalloc::Free para liberar a cadeia de caracteres. O chamador e esse método usam o alocador de tarefas OLE fornecido por uma chamada para CoGetMalloc.

O nome do arquivo retornado em ppszFileName é o nome especificado em uma chamada para IPersistFile::Load quando o documento foi carregado; ou em IPersistFile::SaveCompleted se o documento foi salvo em um arquivo diferente.

Se o objeto não tiver um arquivo de trabalho atual, ele deverá fornecer o prompt padrão que seria exibido em uma caixa de diálogo Salvar como . Por exemplo, o prompt de salvamento padrão para um objeto de processador de palavras pode ser

"*.txt".

Anotações aos Chamadores

O OLE não chama o método GetCurFile . Os aplicativos não chamariam esse método, a menos que também estejam chamando os métodos save dessa interface.

Ao salvar o objeto, você pode chamar esse método antes de chamar IPersistFile::Save para determinar se o objeto tem um arquivo associado. Se esse método retornar S_OK, você poderá chamar IPersistFile::Save com um nome de arquivo NULL e um valor TRUE para o parâmetro fRemember para instruir o objeto a se salvar em seu arquivo atual. Se esse método retornar S_FALSE, você poderá usar o prompt de salvamento retornado no parâmetro ppszFileName para solicitar que o usuário final forneça um nome de arquivo. Em seguida, você pode chamar IPersistFile::Save com o nome de arquivo que o usuário inseriu para executar uma operação Salvar como .

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho objidl.h

Confira também

IPersistFile