次の方法で共有


CImagePalette.MakeIdentityPalette メソッド

[このページに関連付けられている機能 DirectShow は、従来の機能です。 MediaPlayer、IMFMediaEngine、Media Foundation のオーディオ/ビデオ キャプチャに置き換わりました。 これらの機能は、Windows 10とWindows 11用に最適化されています。 新しいコードでは、可能であれば、DirectShow ではなく Media Foundation で MediaPlayerIMFMediaEngineAudio/Video Capture を使用することを強くお勧めします。 Microsoft は、レガシ API を使用する既存のコードを、可能であれば新しい API を使用するように書き換えるよう提案しています。]

メソッドは MakeIdentityPalette 、表示デバイスで選択されているパレットに直接マップされる "ID パレット" を作成しようとします。

構文

HRESULT MakeIdentityPalette(
   PALETTEENTRY *pEntry,
   INT          iColours,
   LPSTR        szDevice
);

パラメーター

pEntry

パレット エントリの配列へのポインター。

iColours

pEntry のパレット エントリの数。

szDevice

GDI EnumDisplayDevices 関数によって返される表示デバイスの名前を含む文字列へのポインター。 メインディスプレイ デバイスを使用するには、このパラメーターを NULL に設定します

戻り値

成功した場合はS_OKを返し、失敗した場合はS_FALSEを返します。

解説

このメソッドは、システム パレット内の予約済みエントリを pEntry 配列内の対応するエントリと比較します。 完全に一致する場合、メソッドは pEntry の残りの (予約されていない) パレット エントリにPC_NOCOLLAPSE フラグを設定します。 このフラグを設定すると、GDI は論理パレット エントリをシステム パレット エントリにマップできなくなります。

CImagePalette::MakePalette メソッドは、このメソッドを呼び出します。

要件

要件
ヘッダー
Winutil.h (Streams.h を含む)
ライブラリ
Strmbase.lib (製品版ビルド);
Strmbasd.lib (デバッグ ビルド)

関連項目

CImagePalette クラス