• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            S.l.e!ep.¢%

            像打了激速一樣,以四倍的速度運轉,開心的工作
            簡單、開放、平等的公司文化;尊重個性、自由與個人價值;
            posts - 1098, comments - 335, trackbacks - 0, articles - 1
              C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

            msxml 解析 xml

            Posted on 2009-04-27 00:12 S.l.e!ep.¢% 閱讀(441) 評論(0)  編輯 收藏 引用 所屬分類: MSXML

            #include <stdlib.h>
            #include <stdio.h>
            #include <atlbase.h>
            #import?? "msxml3.dll"??
            using?? namespace?? MSXML2;??

            void?? dump_com_error(_com_error?? &e)??
            {??
            ?printf("Error\n");??
            ?printf("\a\tCode?? =?? %08lx\n",?? e.Error());??
            ?printf("\a\tCode?? meaning?? =?? %s",?? e.ErrorMessage());??
            ?_bstr_t?? bstrSource(e.Source());??
            ?_bstr_t?? bstrDescription(e.Description());??
            ?printf("\a\tSource?? =?? %s\n",?? (LPCSTR)?? bstrSource);??
            ?printf("\a\tDescription?? =?? %s\n",?? (LPCSTR)?? bstrDescription);??
            }??


            int?? main(int?? argc,?? char*?? argv[])??
            {??
            ?CoInitialize(NULL);??
            ???
            ???
            ?try{??
            ??IXMLDOMDocumentPtr?? pXMLDoc;??
            ??HRESULT?? hr?? =?? pXMLDoc.CreateInstance(__uuidof(DOMDocument));??
            ??
            ??pXMLDoc->async?? =?? false;?? //?? default?? -?? true,??
            ??
            ??
            ??hr?? =?? pXMLDoc->load("c:\\stock.xml");??
            ??
            ??if(hr!=VARIANT_TRUE)??
            ??{??
            ???IXMLDOMParseErrorPtr???? pError;??
            ???
            ???pError?? =?? pXMLDoc->parseError;??
            ???_bstr_t?? parseError?? =_bstr_t("At?? line?? ")+?? _bstr_t(pError->Getline())?? +?? _bstr_t("\n")+?? _bstr_t(pError->Getreason());??
            ???MessageBox(NULL,parseError,?? "Parse?? Error",MB_OK);??
            ???return?? 0;??
            ??}??
            ??
            ??CComPtr<IStream>?? pStream;??
            ??hr?? =?? CreateStreamOnHGlobal(NULL,?? true,?? &pStream);??
            ??hr?? =?? pXMLDoc->save(pStream.p);??
            ??
            ??LARGE_INTEGER?? pos;??
            ??pos.QuadPart?? =?? 0;??
            ??
            ??//the?? key?? is?? to?? reset?? the?? seek?? pointer??
            ??pStream->Seek((LARGE_INTEGER)pos,?? STREAM_SEEK_SET,?? NULL);??
            ??
            ??IXMLDOMDocumentPtr?? pXMLDocNew;??
            ??hr?? =?? pXMLDocNew.CreateInstance(__uuidof(DOMDocument));??
            ??pXMLDocNew->async?? =?? false;??
            ??hr?? =?? pXMLDocNew->load(pStream.p);??
            ??if(hr!=VARIANT_TRUE)??
            ??{??
            ???IXMLDOMParseErrorPtr???? pError;??
            ???
            ???pError?? =?? pXMLDocNew->parseError;??
            ???_bstr_t?? parseError?? =_bstr_t("At?? line?? ")+?? _bstr_t(pError->Getline())?? +?? _bstr_t("\n")+?? _bstr_t(pError->Getreason());??
            ???MessageBox(NULL,parseError,?? "Parse?? Error",MB_OK);??
            ???return?? 0;??
            ??}??
            ??
            ?//?MessageBox(NULL,(LPTSTR)pXMLDocNew->xml,?? "XML?? content",MB_OK);??

            ??IXMLDOMNodeListPtr nodeptr;
            ??pXMLDocNew->get_childNodes(&nodeptr);

            ??long nodesize = 0;
            ??nodeptr->get_length(&nodesize);

            ??IXMLDOMNodePtr xmlnode;

            ??nodeptr->get_item(0, &xmlnode);

            ??????? CComBSTR?? a;
            ??xmlnode->get_baseName(&a);
            ??
            ??USES_CONVERSION;
            ??printf("%s\n", W2T(a));
            ??
            ?}??
            ?catch(_com_error?? &e)??
            ?{??
            ??dump_com_error(e);??
            ?}??
            ?CoUninitialize();??
            ???
            ?return?? 0;??
            }??

            ?

            老司机午夜网站国内精品久久久久久久久| 无码人妻久久一区二区三区免费 | 亚洲精品乱码久久久久久蜜桃图片 | 亚洲va国产va天堂va久久| 国产亚洲欧美精品久久久| 久久精品国产精品青草app| 亚洲精品97久久中文字幕无码| 久久综合九色综合网站| 久久99精品国产99久久6男男| 久久久久亚洲爆乳少妇无| 久久久久人妻一区精品性色av| 亚洲国产成人久久精品动漫| 久久天天躁狠狠躁夜夜2020一| 久久婷婷久久一区二区三区| 久久无码中文字幕东京热| 办公室久久精品| 久久国产亚洲精品无码| 思思久久99热免费精品6| 久久国产精品-久久精品| 久久综合亚洲色HEZYO社区| 国产香蕉97碰碰久久人人| 97久久综合精品久久久综合| 久久无码专区国产精品发布| 久久国产成人亚洲精品影院| 国产精品久久自在自线观看| 久久综合狠狠综合久久综合88| 色综合久久天天综线观看| 久久se精品一区二区影院 | 国产成人综合久久综合| 亚洲AV无码1区2区久久| 色播久久人人爽人人爽人人片aV| 亚洲国产精品久久久久久| 久久发布国产伦子伦精品| 亚洲精品国产字幕久久不卡| 亚洲欧美成人久久综合中文网| 国产午夜电影久久| 国产精品伊人久久伊人电影| 久久国产精品国产自线拍免费| 欧美精品一区二区精品久久| 午夜不卡久久精品无码免费| 无码AV中文字幕久久专区|