Méthode IAnalysisWarnings::GetAnalysisWarning
Récupère l’objet IAnalysisWarning à l’index spécifié.
HRESULT GetAnalysisWarning(
[in] ULONG ulIndex,
[out] IAnalysisWarning **ppWarning
);
-
ulIndex [in]
-
Index de base zéro de l’objet IAnalysisWarning à obtenir.
-
ppWarning [out]
-
Pointeur vers l’objet IAnalysisWarning à l’index spécifié.
Pour obtenir une description des valeurs renvoyées, consultez Classes et interfaces - Analyse de l’entrée manuscrite.
Attention
Pour éviter une fuite de mémoire, appelez IUnknown::Release sur *ppWarning lorsque vous n’avez plus besoin d’utiliser l’avertissement.
L’exemple suivant montre un plan d’un gestionnaire d’événements pour l’événement _IAnalysisEvents::Results . Le gestionnaire vérifie IAnalysisStatus::IsSuccessful. Si l’opération d’analyse génère des avertissements, le gestionnaire effectue une itération au sein de la collection d’objets IAnalysisWarning .
// _IAnalysisEvents::Results event handler.
STDMETHODIMP CMyClass::Results(
IInkAnalyzer *pInkAnalyzer,
IAnalysisStatus *pAnalysisStatus)
{
// Check the status of the analysis operation.
VARIANT_BOOL bResult = VARIANT_FALSE;
HRESULT hr = pAnalysisStatus->IsSuccessful(&bResult);
if( SUCCEEDED(hr) )
{
if( bResult )
{
// Insert code that handles a successful result.
}
else
{
// Get the analysis warnings.
IAnalysisWarnings* pAnalysisWarnings = NULL;
hr = pAnalysisStatus->GetWarnings(&pAnalysisWarnings);
if (SUCCEEDED(hr))
{
// Iterate through the warning collection.
ULONG warningCount = 0;
hr = pAnalysisWarnings->GetCount(&warningCount);
if (SUCCEEDED(hr))
{
IAnalysisWarning *pAnalysisWarning = NULL;
AnalysisWarningCode analysisWarningCode;
for (ULONG index=0; index<warningCount; index++)
{
// Get an analysis warning.
hr = pAnalysisWarnings->GetAnalysisWarning(
index, &pAnalysisWarning);
if (SUCCEEDED(hr))
{
// Get the warning code for the warning.
hr = pAnalysisWarning->GetWarningCode(
&analysisWarningCode);
if (SUCCEEDED(hr))
{
// Insert code that handles each
// analysis warning.
}
}
// Release this reference to the analysis warning.
if (pAnalysisWarning != NULL)
{
pAnalysisWarning->Release();
pAnalysisWarning = NULL;
}
if (FAILED(hr))
{
break;
}
}
}
}
// Release this reference to the analysis warnings collection.
if (pAnalysisWarnings != NULL)
{
pAnalysisWarnings->Release();
pAnalysisWarnings = NULL;
}
}
}
return hr;
}
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows XP Édition Tablette PC [applications de bureau uniquement] |
Serveur minimal pris en charge |
Aucun pris en charge |
En-tête |
|
DLL |
|