PX_Blob
Chamar essa função dentro da função de membro de DoPropExchange do controle para serializar ou inicializar uma propriedade que armazena dados (BLOB) de objeto binário grande.
BOOL PX_Blob(
CPropExchange* pPX,
LPCTSTR pszPropName,
HGLOBAL& hBlob,
HGLOBAL hBlobDefault = NULL
);
Parâmetros
pPX
Ponteiro para o objeto de CPropExchange (normalmente passado como um parâmetro para DoPropExchange).pszPropName
O nome da propriedade que está sendo trocada.hBlob
Referência à variável em que a propriedade é armazenada (normalmente uma variável de membro da sua classe.)hBlobDefault
Valor padrão para a propriedade.
Valor de retorno
Diferente de zero se a troca foi bem-sucedida; 0 se bem-sucedida.
Comentários
O valor da propriedade será lida ou gravada da variável referenciada por hBlob, conforme apropriado. Essa variável deve ser inicializado na nulo inicialmente antes de chamar PX_Blob pela primeira vez (normalmente, isso pode ser feito no construtor de controle). Se hBlobDefault for especificado, será usado como o valor padrão da propriedade. Esse valor será usado se, por qualquer motivo, a inicialização de controle ou o processo de serialização falham.
Os identificadores hBlob e hBlobDefault se referem a um bloco de memória que contém o seguinte:
DWORD que contém o comprimento, em bytes, dos dados binários a seguir, seguido imediatamente por
Um bloco de memória que contém os dados binários reais.
Observe que PX_Blob atribuirá a memória, usando o windows GlobalAlloc API, ao carregar propriedades de tipo BLOB. Você é responsável para liberar a memória. Em virtude disso, o destruidor de seu controle deve chamar GlobalFree em todos os identificadores de propriedade do tipo BLOB para liberar qualquer memória alocada ao controle.
Requisitos
Header: afxctl.h