BITMAPINFO 構造体は、標準データ形式と圧縮データ形式に対応するために可変長です。 この構造体は可変長であるため、アプリケーションは常に構造体のサイズを照会し、現在のビデオ形式を取得する前にメモリを割り当てる必要があります。 次の例では 、capGetVideoFormatSize マクロを使用してバッファー サイズを取得し、 capGetVideoFormat マクロを呼び出して現在のビデオ形式を取得します。
LPBITMAPINFO lpbi;
DWORD dwSize;
dwSize = capGetVideoFormatSize(hWndC);
lpbi = GlobalAllocPtr (GHND, dwSize);
capGetVideoFormat(hWndC, lpbi, dwSize);
// Access the video format and then free the allocated memory.
アプリケーションは capSetVideoFormat マクロ (または WM_CAP_SET_VIDEOFORMAT メッセージ) を使用して 、BITMAPINFO ヘッダー構造をキャプチャ ウィンドウに送信できます。 ビデオ形式はデバイス固有であるため、アプリケーションで戻り値をチェックして、形式が受け入れられたかどうかを判断する必要があります。
関連トピック