Método IPersistStreamInit::Save (ocidl.h)
Salva um objeto no fluxo especificado.
Sintaxe
HRESULT Save(
[in] LPSTREAM pStm,
[in] BOOL fClearDirty
);
Parâmetros
[in] pStm
Um ponteiro IStream para o fluxo no qual o objeto deve ser salvo.
[in] fClearDirty
Indica se o sinalizador de sujo deve ser limpo após a conclusão do salvamento. Se TRUE, o sinalizador deverá ser limpo. Se FALSE, o sinalizador deverá ser deixado inalterado.
Valor retornado
Esse método pode retornar os valores a seguir.
Código de retorno | Descrição |
---|---|
|
O método foi concluído com sucesso. |
|
O objeto não pôde se salvar no fluxo. Esse erro pode indicar, por exemplo, que o objeto contém outro objeto que não é serializável para um fluxo ou que uma chamada ISequentialStream::Write retornou STG_E_CANTSAVE. |
|
Não foi possível salvar o objeto porque não há espaço no dispositivo de armazenamento. |
Comentários
IPersistStreamInit::Save salva um objeto no fluxo especificado e indica se o objeto deve redefinir seu sinalizador sujo.
O ponteiro seek é posicionado no local no fluxo no qual o objeto deve começar a gravar seus dados. O objeto chama o método ISequentialStream::Write para gravar seus dados.
Na saída, o ponteiro seek deve ser posicionado imediatamente após os dados do objeto. A posição do ponteiro seek será indefinida se um erro retornar.
Observações aos implementadores
O método IPersistStreamInit::Save não grava o CLSID no fluxo. O chamador é responsável por escrever o CLSID.O método IPersistStreamInit::Save pode ler, gravar e buscar no fluxo; mas não deve buscar um local no fluxo antes do ponteiro de busca na entrada.
Requisitos
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 | ocidl.h |