Interface IAnalysisWarning
Representa um aviso ou erro que ocorre durante uma operação de análise de tinta.
Membros
A interface IAnalysisWarning herda da interface IUnknown . IAnalysisWarning também tem estes tipos de membros:
Métodos
A interface IAnalysisWarning tem esses métodos.
Método | Descrição |
---|---|
GetBackgroundError | Recupera o código de erro para a operação de análise de tinta em segundo plano se ocorrer um erro. |
GetHint | Recupera a dica de análise que causou esse aviso |
GetNodeIds | Recupera os identificadores de quaisquer nós de contexto relevantes associados a esse aviso. |
GetWarningCode | Recupera o tipo de aviso que ocorreu usando a enumeração AnalysisWarningCode . |
Comentários
Os tipos de avisos que podem ocorrer são descritos pela enumeração AnalysisWarningCode . Geralmente, os avisos ocorrem quando você tenta usar um recurso que não tem suporte do IInkAnalysisRecognizer que o IInkAnalyzer está usando.
Alguns avisos indicam que o IInkAnalyzer não concluiu a operação de análise. Para obter mais informações, consulte AnalysisWarningCode.
Exemplos
O exemplo a seguir mostra uma estrutura de tópicos de um manipulador de eventos para o evento _IAnalysisEvents::Results . O manipulador verifica IAnalysisStatus::IsSuccessful. Se a operação de análise gerar avisos, o manipulador itera por meio da coleção de objetos 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;
}
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows XP Tablet PC Edition [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Nenhum compatível |
Cabeçalho |
|
DLL |
|