次の方法で共有


IWiaItem2::CheckExtension メソッド

指定した拡張機能がコンピューター上で使用可能で、 IWiaItem2::GetExtension メソッドで使用できるかどうかを確認します。

構文

HRESULT CheckExtension(
  [in]  LONG   lFlags,
  [in]  BSTR   bstrName,
  [in]  REFIID riidExtensionInterface,
  [out] BOOL   *pbExtensionExists
);

パラメーター

lFlags [in]

型: LONG

現在使用されていません。 ゼロに設定してください。

bstrName [in]

種類: BSTR

拡張機能の名前を指定します。

riidExtensionInterface [in]

種類: REFIID

現在使用されていません。

pbExtensionExists [out]

種類: BOOL*

BOOL へのポインターを受け取ります。

False

指定した拡張機能は使用できません。

True

指定した拡張機能を使用できます。

戻り値

種類: HRESULT

このメソッドが成功すると、 S_OKが返されます。 それ以外の場合は、 HRESULT エラー コードが返されます。

注釈

このメソッドを使用すると、アプリケーションは IWiaItem2::GetExtension メソッドを呼び出す前に拡張機能を使用できるかどうかをチェックできます。 また、アプリケーションでは、それぞれの拡張機能を共同作成せずに使用可能な拡張機能をチェックし、使用する拡張機能を決定できます。

CheckImgFilter は、ドライバーに画像処理フィルターがあるかどうかを確認します。 プレビュー コンポーネントを呼び出す前に、アプリケーションでドライバーに画像処理フィルターがあることを確認する必要があります。

HRESULT
CheckImgFilter(
   IN  IWiaItem2 *pWiaItem2,
   OUT BOOL      *pbHasImgFilter)
{
   HRESULT     hr = S_OK;

   if (!pWiaItem2 || !pbHasImgFilter)
   {
      hr = E_INVALIDARG;
   }

   if (SUCCEEDED(hr))
   {
     *pbHasImgFilter = FALSE;
   }

   if (SUCCEEDED(hr))
   {
      BSTR    bstrFilterString = SysAllocString(WIA_IMAGEPROC_FILTER_STR);

      if (bstrFilterString)
      {
         hr = pWiaItem2->CheckExtension(0,
                                        bstrFilterString,
                                        IID_IWiaSegmentationFilter,
                                        pbHasImgFilter);

         SysFreeString(bstrFilterString);
         bstrFilterString = NULL;
      }
      else
      {
         hr = E_OUTOFMEMORY;
      }
   }

   return hr;

}

要件

要件
サポートされている最小のクライアント
Windows Vista [デスクトップ アプリのみ]
サポートされている最小のサーバー
Windows Server 2008 [デスクトップ アプリのみ]
Header
Wia.h
IDL
Wia.idl