OleLoadPictureEx 関数 (olectl.h)

新しいピクチャ オブジェクトを作成し、ストリームの内容から初期化します。 これは、最初のパラメーターとして NULL を指定して OleCreatePictureIndirect を呼び出し、その後に IPersistStream::Load を呼び出すのと同じです。

構文

WINOLECTLAPI OleLoadPictureEx(
  [in]  LPSTREAM lpstream,
  [in]  LONG     lSize,
  [in]  BOOL     fRunmode,
  [in]  REFIID   riid,
  [in]  DWORD    xSizeDesired,
  [in]  DWORD    ySizeDesired,
  [in]  DWORD    dwFlags,
  [out] LPVOID   *lplpvObj
);

パラメーター

[in] lpstream

画像のデータを含むストリームへのポインター。

[in] lSize

ストリームから読み取る必要があるバイト数。ストリーム全体を読み取る必要がある場合は 0。

[in] fRunmode

KeepOriginalFormat プロパティの初期値の反対。 TRUE の場合、KeepOriginalFormatFALSE に設定され、その逆も同様です。

[in] riid

ppvObj で返されるインターフェイス ポインターの型を記述するインターフェイスの識別子への参照。

[in] xSizeDesired

アイコンまたはカーソルの目的の幅。 有効な値は 16、32、48 です。 システムの既定のサイズを使用するには、両方のサイズ パラメーターにLP_DEFAULTを渡します。

[in] ySizeDesired

アイコンまたはカーソルの目的の高さ。 有効な値は 16、32、48 です。 システムの既定のサイズを使用するには、両方のサイズ パラメーターにLP_DEFAULTを渡します。

[in] dwFlags

アイコンまたはカーソルに必要な色の深さ。 値は、LP_MONOCHROME (モノクロ)、LP_VGACOLOR (16 色)、LP_COLOR (256 色)、またはLP_DEFAULT (現在の表示に最適な深度を選択) です。

[out] lplpvObj

riid で要求されたインターフェイス ポインターを受け取るポインター変数のアドレス。 正常に戻ると、*ppvObj には、モニカーによって識別されるオブジェクトのストレージに対する要求されたインターフェイス ポインターが含まれます。 *ppvObjNULL 以外の場合、この関数はインターフェイスで IUnknown::AddRef を呼び出します。 IUnknown::Release を呼び出すのは呼び出し元の責任です。 エラーが発生した場合、*ppvObjNULL に設定されます。

戻り値

この関数は、成功したS_OKを返します。 その他の使用可能な値は次のとおりです。

リターン コード 説明
E_NOINTERFACE
オブジェクトは、riid で指定されたインターフェイスをサポートしていません。
E_POINTER
pPictDesc または ppvObj のアドレスが無効です。 たとえば、 NULL にすることができます。

注釈

ストリームは、BMP (ビットマップ)、WMF (メタファイル)、または ICO (アイコン) 形式である必要があります。 OleLoadPictureEx を使用して作成された図オブジェクトは、常に内部リソースの所有権を持ちます (fOwn==TRUE は暗黙的です)。

アイコンまたはカーソル サイズの指定に加えて、 OleLoadPictureEx では カラー カーソルの読み込みがサポートされています。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー olectl.h
Library OleAut32.lib
[DLL] OleAut32.dll

こちらもご覧ください

OleCreatePictureIndirect

PICTDESC