IAnalysisWarning-Schnittstelle
Stellt eine Warnung oder einen Fehler dar, der während eines Freihandanalysevorgangs auftritt.
Die IAnalysisWarning-Schnittstelle erbt von der IUnknown-Schnittstelle . IAnalysisWarning verfügt auch über folgende Membertypen:
Die IAnalysisWarning-Schnittstelle verfügt über diese Methoden.
Methode | BESCHREIBUNG |
---|---|
GetBackgroundError | Ruft den Fehlercode für den Freihandanalysevorgang im Hintergrund ab, wenn ein Fehler aufgetreten ist. |
GetHint | Ruft den Analysehinweis ab, der diese Warnung verursacht hat. |
GetNodeIds | Ruft die Bezeichner aller relevanten Kontextknoten ab, die dieser Warnung zugeordnet sind. |
GetWarningCode | Ruft den Typ der Warnung ab, die mithilfe der AnalysisWarningCode-Enumeration aufgetreten ist. |
Die Arten von Warnungen, die auftreten können, werden durch die AnalysisWarningCode-Enumeration beschrieben. Häufig treten Warnungen auf, wenn Sie versuchen, ein Feature zu verwenden, das vom IInkAnalysisRecognizer nicht unterstützt wird, das von IInkAnalyzer verwendet wird.
Einige Warnungen deuten darauf hin, dass der IInkAnalyzer den Analysevorgang nicht abgeschlossen hat. Weitere Informationen finden Sie unter AnalysisWarningCode.
Das folgende Beispiel zeigt eine Gliederung eines Ereignishandlers für das ereignis _IAnalysisEvents::Results . Der Handler überprüft IAnalysisStatus::IsSuccessful. Wenn der Analysevorgang Warnungen generiert, durchläuft der Handler die Auflistung von IAnalysisWarning-Objekten .
// _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;
}
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows XP Tablet PC Edition [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) |
Nicht unterstützt |
Header |
|
DLL |
|