Bagikan melalui


Antarmuka IAnalysisStatus

Mewakili status operasi analisis tinta dengan menjelaskan apakah analisis berhasil diselesaikan dan apakah ada peringatan yang terjadi.

Anggota

Antarmuka IAnalysisStatus mewarisi dari antarmuka IUnknown . IAnalysisStatus juga memiliki jenis anggota ini:

Metode

Antarmuka IAnalysisStatus memiliki metode ini.

Metode Deskripsi
GetAppliedChangesRegion Mengambil wilayah dokumen yang sesuai dengan perubahan yang dibuat di pohon simpul konteks objek IInkAnalyzer sebagai hasil analisis tinta.
GetWarnings Mengambil koleksi IAnalysisWarnings yang menjelaskan kesalahan dan peringatan apa pun yang dihasilkan oleh operasi analisis.
Gagal Mengambil ringkasan Boolean dari hasil operasi analisis.

Contoh

Contoh berikut menunjukkan kerangka penanganan aktivitas untuk peristiwa _IAnalysisEvents::Results . Handler memeriksa IAnalysisStatus::IsSuccessful. Jika operasi analisis menghasilkan peringatan, handler melakukan iterasi melalui pengumpulan objek 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;
}

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung
Windows XP Tablet PC Edition [hanya aplikasi desktop]
Server minimum yang didukung
Tidak ada yang didukung
Header
IACom.h (juga memerlukan IACom_i.c)
DLL
IACom.dll

Lihat juga

IInkAnalyzer::Analisis Metode

Metode IInkAnalyzer::BackgroundAnalyze

Referensi Analisis Tinta