Share via


Función OleSave (ole2.h)

Guarda un objeto abierto en modo transaccionado en el objeto de almacenamiento especificado.

Sintaxis

HRESULT OleSave(
  [in] LPPERSISTSTORAGE pPS,
  [in] LPSTORAGE        pStg,
  [in] BOOL             fSameAsLoad
);

Parámetros

[in] pPS

Puntero a la interfaz IPersistStorage en el objeto que se va a guardar.

[in] pStg

Puntero a la interfaz IStorage en el objeto de almacenamiento de destino al que se va a guardar el objeto indicado en pPS .

[in] fSameAsLoad

TRUE indica que pStg es el mismo objeto de almacenamiento desde el que se cargó o creó el objeto; FALSE indica que pStg se cargó o creó a partir de un objeto de almacenamiento diferente.

Valor devuelto

Esta función devuelve S_OK si se ejecuta correctamente. Otros valores posibles incluyen lo siguiente.

Código devuelto Descripción
STGMEDIUM_E_FULL
No se pudo guardar el objeto debido a la falta de espacio en disco.

Esta función también puede devolver cualquiera de los valores de error devueltos por el método IPersistStorage::Save .

Comentarios

La función auxiliar OleSave controla la situación común en la que un objeto está abierto en modo de transacción y, a continuación, se guarda en el objeto de almacenamiento especificado que usa la implementación del archivo compuesto proporcionado por OLE. El modo de transacción significa que los cambios en el objeto se almacenan en búfer hasta que se llame a IStorage::Commit o IStorage::Revert . Los autores de llamadas pueden controlar otras situaciones llamando directamente a las interfaces IPersistStorage e IStorage .

OleSave hace lo siguiente:

Nota Los objetos estáticos se guardan en una secuencia denominada CONTENTS. Los objetos de metarchivo estáticos se guardan en "formato de metarchivo colocable" y los datos dib estáticos se guardan en el "formato de archivo DIB". Estos formatos se definen para ser los estándares OLE para metarchivo y DIB. Todos los datos transferidos mediante una interfaz IStream o un archivo (es decir, a través de IDataObject::GetDataHere) deben estar en estos formatos. Además, todos los objetos cuyo formato de archivo predeterminado es un metarchivo o DIB deben escribir sus datos en una secuencia CONTENTS con estos formatos estándar.
 

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 ole2.h
Library Ole32.lib
Archivo DLL Ole32.dll
Conjunto de API ext-ms-win-com-ole32-l1-1-3 (introducido en Windows 10, versión 10.0.10240)

Consulte también

IPersistStorage

IStorage