Método IPersistFile::Save (objidl.h)
Salva uma cópia do objeto no arquivo especificado.
Sintaxe
HRESULT Save(
[in] LPCOLESTR pszFileName,
[in] BOOL fRemember
);
Parâmetros
[in] pszFileName
O caminho absoluto do arquivo no qual o objeto deve ser salvo. Se pszFileName for NULL, o objeto deverá salvar seus dados no arquivo atual, se houver um.
[in] fRemember
Indica se o parâmetro pszFileName deve ser usado como o arquivo de trabalho atual. Se TRUE, pszFileName se tornará o arquivo atual e o objeto deverá limpar seu sinalizador sujo após o salvamento. Se FALSE, essa operação de salvamento será uma operação Salvar uma Cópia como ... . Nesse caso, o arquivo atual permanece inalterado e o objeto não deve limpar seu sinalizador de sujo. Se pszFileName for NULL, a implementação deverá ignorar o sinalizador fRemember .
Retornar valor
Se o objeto tiver sido salvo com êxito, o valor retornado será S_OK. Caso contrário, será S_FALSE. Esse método também pode retornar vários erros de armazenamento.
Comentários
Esse método pode ser chamado para salvar um objeto no arquivo especificado de uma das três maneiras:
O implementador deve detectar qual tipo de operação de salvamento o chamador está solicitando. Se o parâmetro pszFileName for NULL, um Save será solicitado. Se o parâmetro pszFileName não for NULL, use o valor do parâmetro fRemember para distinguir entre um Save As e um Save a Copy As.
Em operações Salvar ou Salvar como, IPersistFile::Save limpa o sinalizador de sujo interno após salvar e envia notificações IAdviseSink::OnSave para qualquer conexão de consultoria (consulte também IOleAdviseHolder::SendOnSave). Além disso, nessas operações, o objeto está no modo NoScribble até receber uma chamada IPersistFile::SaveCompleted . No modo NoScribble, o objeto não deve gravar no arquivo.
No cenário Salvar como , a implementação também deve enviar notificações IAdviseSink::OnRename para quaisquer conexões de consultoria (consulte também IOleAdviseHolder::SendOnRename).
No cenário Salvar uma Cópia como, a implementação não limpa o sinalizador de sujo interno após o salvamento.
Anotações para chamadores
O OLE não chama IPersistFile::Save. Normalmente, os aplicativos não o chamariam a menos que estivessem salvando um objeto em um arquivo diretamente, que geralmente é deixado para o usuário final.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 |