Compartir a través de


Método IOpcFactory::ReadPackageFromStream (msopc.h)

Deserializa los datos del paquete de una secuencia y crea un objeto de paquete para representar el paquete que se va a leer. Aunque un objeto Packaging API obtenido del objeto de paquete o el propio objeto de paquete, todavía está en uso, la secuencia se puede usar para acceder a los datos del paquete.

Sintaxis

HRESULT ReadPackageFromStream(
  [in]          IStream        *stream,
  [in]          OPC_READ_FLAGS flags,
  [out, retval] IOpcPackage    **package
);

Parámetros

[in] stream

Puntero a la interfaz IStream de la secuencia.

La secuencia debe ser legible, buscable, tener tamaño y debe contener datos de paquete. Además, si la secuencia no se puede clonar, se almacenará en búfer y se leerá secuencialmente, lo que incurrirá en sobrecarga.

[in] flags

Valor que especifica la configuración de lectura para almacenar en caché los componentes del paquete y validarlos con los requisitos de conformidad de OPC .

[out, retval] package

Puntero a la interfaz IOpcPackage del objeto de paquete que representa el paquete que se lee a través de la secuencia.

Valor devuelto

El método devuelve un valor HRESULT. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros.

Código devuelto Descripción
S_OK
El método se ha llevado a cabo de forma correcta.
E_INVALIDARG
El valor pasado en el parámetro flags no es un valor de enumeración OPC_READ_FLAGS válido.
E_NOTIMPL
Este método no se implementa para esta versión de Windows.
E_POINTER
Al menos uno de los parámetros de secuencia y paquete es NULL.
Error de la interfaz IStream
Código de error HRESULT de la interfaz IStream .
Error de consumo de paquetes
Código de error HRESULT del grupo de errores de consumo de paquetes.
Error de URI de parte
Código de error HRESULT del grupo de errores de URI de parte.

Comentarios

No use una secuencia para serializar los datos del paquete cuando se use la misma secuencia para deserializar un paquete, ya que el intento puede dar lugar a un comportamiento indefinido.

Las API de empaquetado pueden interactuar con paquetes que asignan un archivo ZIP como se especifica en OPC y que se basan en la codificación Zip32 (ZIP 2.0) o Zip64 (ZIP 4.5).

Para obtener información sobre cómo usar este método para cargar un paquete, vea la tarea Cargar un paquete de programación.

Compatibilidad con versiones anteriores de Windows

Este método no se admite en versiones de Windows anteriores a Windows 7. Para obtener más información, consulte Introducción con la API de empaquetado y Actualización de plataforma para Windows Vista.

Seguridad para subprocesos

Los objetos de empaquetado no son seguros para subprocesos.

Para más información, consulte la Introducción con la API de empaquetado.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 7 [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008 R2 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado msopc.h

Consulte también

Introducción con la API de empaquetado

IOpcFactory

Carga de un paquete

OPC_READ_FLAGS

Temas de introducción

Guía de programación de api de empaquetado

Referencia de API de empaquetado

Ejemplos de API de empaquetado

Errores de empaquetado

Actualización de la plataforma para Windows Vista

Referencia