Compartir a través de


PX_Blob

Llame a esta función dentro de la función miembro de DoPropExchange de control para serializar o inicializar una propiedad que almacene los datos de (BLOB) de objeto binario grande.

BOOL PX_Blob( 
   CPropExchange* pPX, 
   LPCTSTR pszPropName, 
   HGLOBAL& hBlob, 
   HGLOBAL hBlobDefault = NULL  
);

Parámetros

  • pPX
    Puntero al objeto de CPropExchange (último normalmente como parámetro a DoPropExchange).

  • pszPropName
    El nombre de la propiedad que se intercambiada.

  • hBlob
    Referencia a la variable donde se almacena la propiedad (normalmente una variable miembro de clase).

  • hBlobDefault
    Valor predeterminado de la propiedad.

Valor devuelto

Distinto de cero si el intercambio fue correcto; 0 si no.

Comentarios

El valor de propiedad será leído de o escrito en la variable a la que hace referencia hBlob, según corresponda. Esta variable se debe inicializar a nulo inicialmente antes de llamar a PX_Blob por primera vez (normalmente, esto se puede hacer en el constructor del control). Si se especifica hBlobDefault , se utilizará como valor predeterminado de la propiedad. Se utiliza este valor si, por cualquier razón, se produce un error en la inicialización del control o el proceso de serialización.

Los identificadores hBlob y hBlobDefault hacen referencia a un bloque de memoria que contiene lo siguiente:

  • DWORD que contiene la longitud, en bytes, de datos binarios que sigue, seguido por

  • Un bloque de memoria que contiene los datos binarios reales.

Observe que PX_Blob asignará memoria, mediante Windows GlobalAlloc API, al cargar propiedades de Blob- tipo. Es responsable de liberar esta memoria. Por consiguiente, el destructor del control debe llamar a GlobalFree en cualquier identificador de propiedad de Blob- tipo para liberar la memoria asignada al control.

Requisitos

Header: afxctl.h

Vea también

Referencia

COleControl::DoPropExchange

Conceptos

Macros y variables globales de MFC