#include<DocumentFilters.h>#include<string.h>#include<string>#define UCS2(src) reinterpret_cast<const IGR_UCS2 *>(std::u16string(src).c_str())intmain(intargc,char**argv){Instance_Status_Blockisb={0};Error_Control_Blockecb={0};IGR_SHORTdf;IGR_LONGcaps,type,pageCount=0;IGR_HDOCdoc1_handle=0,doc2_handle=0;IGR_HPAGEdoc1_page1_handle=0,doc2_page1_handle=0;IGR_HTEXTCOMPAREcompare=0;strncpy(isb.Licensee_ID1,"YOUR_LICENSE_KEY_HERE",sizeof(isb.Licensee_ID1)-1);Init_Instance(0,".",&isb,&df,&ecb);if((res=IGR_Open_File_Ex(UCS2(u"original.doc"),IGR_FORMAT_IMAGE,UCS2(u""),&caps,&type,&doc1_handle,&ecb))==IGR_OK&&(res=IGR_Open_File_Ex(UCS2(u"revised.doc"),IGR_FORMAT_IMAGE,UCS2(u""),&caps,&type,&doc2_handle,&ecb))==IGR_OK&&(res=IGR_Open_Page(doc1_handle,0,&doc1_page1_handle,&ecb))==IGR_OK&&(res=IGR_Open_Page(doc2_handle,0,&doc2_page1_handle,&ecb))==IGR_OK){IGR_Text_Compare_Settingssettings={sizeof(IGR_Text_Compare_Settings)};IGR_Compare_Documents_Differencediff={sizeof(IGR_Compare_Documents_Difference)};if((ret=IGR_Text_Compare_Pages(doc1_page1_handle,nullptr,doc2_page1_handle,nullptr,&settings,&compare,&ecb))==IGR_OK){while(IGR_Text_Compare_Next(compare,&diff,&ecb)==IGR_OK){// ... work with diff objectIGR_Text_Compare_Difference_Dispose(&diff,&ecb);}IGR_Text_Compare_Close(compare,&ecb);}}if(doc1_page1_handle)IGR_Close_Page(doc1_page1_handle,&ecb);if(doc2_page1_handle)IGR_Close_Page(doc2_page1_handle,&ecb);if(doc1_handle)IGR_Close_File(doc1_handle,&ecb);if(doc2_handle)IGR_Close_File(doc2_handle,&ecb);return0;}