Compartir a través de


Método IWiaItem2::CheckExtension

Comprueba si una extensión especificada está disponible en el equipo y la puede usar el método IWiaItem2::GetExtension .

Sintaxis

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

Parámetros

lFlags [in]

Tipo: LONG

Actualmente no se usa. Debe establecerse como cero.

bstrName [in]

Tipo: BSTR

Especifica el nombre de la extensión.

riidExtensionInterface [in]

Tipo: REFIID

Actualmente no se usa.

pbExtensionExists [out]

Tipo: BOOL*

Recibe un puntero a un BOOL.

FALSO

La extensión especificada no está disponible.

VERDAD

La extensión especificada está disponible.

Valor devuelto

Tipo: HRESULT

Si este método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error HRESULT .

Comentarios

Con este método, las aplicaciones pueden comprobar si una extensión está disponible antes de llamar al método IWiaItem2::GetExtension . Además, la aplicación puede comprobar qué extensiones están disponibles sin crear conjuntamente cada una de ellas y, a continuación, decidir cuál usar.

Ejemplos

CheckImgFilter comprueba si el controlador tiene un filtro de procesamiento de imágenes. Antes de llamar al componente de vista previa, una aplicación debe asegurarse de que el controlador tiene un filtro de procesamiento de imágenes.

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;

}

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2008 [solo aplicaciones de escritorio]
Encabezado
Wia.h
IDL
Wia.idl