次の方法で共有


PX_Blob

プロパティをシリアル化するか、または初期化するコントロールの DoPropExchange のメンバー関数内でこの関数をストアのバイナリ ラージ オブジェクト (BLOB) のデータ呼び出します。

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

パラメーター

  • pPX
    CPropExchange のオブジェクトへのポインター (通常 DoPropExchangeにパラメーターとして渡される)。

  • pszPropName
    交換するプロパティの名前。

  • hBlob
    プロパティが格納された変数への参照 (通常はクラスのメンバー変数)。

  • hBlobDefault
    プロパティの既定値です。

戻り値

交換が正常ではない; それ以外の場合は 0。

解説

属性値はから読み込まれたり、必要に hBlobによって、参照された変数に書き込まれます。この変数は、最初に PX_Blob を初めて呼び出す前に NULL に初期化する必要があります (通常、これは、コントロールのコンストラクターでできます)。hBlobDefault が指定されている場合、プロパティの既定値として使用されます。この値は、なんらかの理由で、コントロールの初期化やシリアル化プロセスが失敗したときに使用されます。

ハンドル hBlob と hBlobDefault は、次を含むメモリのブロックを示します:

  • すぐにその後に DWORD 、次のバイナリ データのバイトで、期間が含まれます。

  • 含むメモリ ブロックの実際のバイナリ データ。

ブロブ型のプロパティを読み込むとき PX_Blob が、ウィンドウの GlobalAlloc API を使用して割り当てることに注意してください。これは、メモリが。このメモリの解放を管理します。したがって、コントロールのデストラクターは、コントロールに割り当てたメモリを解放します。ブロブに任意の型のプロパティのハンドルの GlobalFree をダイヤルする必要があります。

必要条件

ヘッダー : afxctl.h

参照

関連項目

COleControl::DoPropExchange

概念

MFC マクロとグローバル