IWiaItem2 :: CheckExtension, méthode
Vérifie si une extension spécifiée est disponible sur l’ordinateur et si elle peut être utilisée par la méthode IWiaItem2 :: GetExtension .
Syntaxe
HRESULT CheckExtension(
[in] LONG lFlags,
[in] BSTR bstrName,
[in] REFIID riidExtensionInterface,
[out] BOOL *pbExtensionExists
);
Paramètres
-
lFlags [ dans]
-
Type : long
Actuellement inutilisé. Doit être défini sur zéro (0).
-
bstrName [ dans]
-
Type : BSTR
Spécifie le nom de l'extension.
-
riidExtensionInterface [ dans]
-
Type : REFIID
Actuellement inutilisé.
-
pbExtensionExists [ à]
-
Type : bool *
Reçoit un pointeur vers un booléen.
-
FAUSSES
-
L’extension spécifiée n’est pas disponible.
-
:
-
L’extension spécifiée est disponible.
Valeur retournée
Type : HRESULT
Si cette méthode est réussie, elle retourne la valeur _ OK. Sinon, elle retourne un code d’erreur HRESULT .
Remarques
À l’aide de cette méthode, les applications peuvent vérifier si une extension est disponible avant d’appeler la méthode IWiaItem2 :: GetExtension . En outre, l’application peut vérifier les extensions qui sont disponibles sans co-créer chacune d’elles, puis choisir celle qui doit être utilisée.
Exemples
CheckImgFilter vérifie si le pilote a un filtre de traitement d’image. Avant d’appeler la version préliminaire du composant, une application doit s’assurer que le pilote possède un filtre de traitement d’image.
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;
}
Configuration requise
| Condition requise | Valeur |
|---|---|
| Client minimal pris en charge |
Windows [Applications de bureau Vista uniquement] |
| Serveur minimal pris en charge |
Windows Serveur 2008 [ applications de bureau uniquement] |
| En-tête |
|
| MIDL |
|