PX_Blob
Appelez cette fonction dans la fonction membre d' DoPropExchange de votre contrôle pour sérialiser ou initialiser une propriété qui stocke les données de blob (BLOB).
BOOL PX_Blob(
CPropExchange* pPX,
LPCTSTR pszPropName,
HGLOBAL& hBlob,
HGLOBAL hBlobDefault = NULL
);
Paramètres
pPX
Pointeur vers l'objet de CPropExchange (en général passé comme paramètre à DoPropExchange).pszPropName
Le nom d'être permuté.hBlob
Référence à la variable où la propriété est stockée (en général une variable membre de votre classe).hBlobDefault
Valeur par défaut de la propriété.
Valeur de retour
Une valeur différente de zéro si l'échange a réussi ; 0 si infructueux.
Notes
La valeur de propriété sera lue dans ou écrites dans la variable référencée par hBlob, selon le cas.Cette variable doit être initialisée à NULL avant d'appeler initialement PX_Blob pour la première fois (en général, cela se fait dans le constructeur du contrôle).Si hBlobDefault est spécifié, il sera utilisé comme valeur par défaut de la propriété.Cette valeur est utilisée si, pour une raison quelconque, l'initialisation du contrôle ou le processus de sérialisation échoue.
Les handles hBlob et hBlobDefault font référence à un bloc de mémoire qui contient les éléments suivants :
DWORD qui contient la longueur, en octets, des données binaires qui suivent, suivi par
Un bloc de mémoire contenant les données binaires réelles.
Notez qu' PX_Blob allouera la mémoire, l'utilisation de l'API de GlobalAlloc de windows, lorsque le chargement des propriétés de BLOB-type.Vous êtes chargé de libérer cette mémoire.Par conséquent, le destructeur de votre contrôle doit appeler GlobalFree sur tous les handles de propriété de BLOB-type pour libérer de la mémoire allouée à votre contrôle.
Configuration requise
Header: afxctl.h