• <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>
            隨筆-9  評論-6  文章-5  trackbacks-0
            使用最原始的調用COM組件的方法,這個方法假設COM組件的dll已經被注冊到系統中了

            CoInitialize(NULL) ;


            IX* pIX = NULL ;  
            HRESULT hr = CoCreateInstance(CLSID_CA,
            NULL,
            CLSCTX_INPROC_SERVER,
            IID_IX,
            (void**)&pIX) ;
            if (SUCCEEDED(hr))
            {

            pIX->Fx() ;

            IY* pIY = NULL ;
            hr = pIX->QueryInterface(IID_IY, (void**)&pIY) ;
            if (SUCCEEDED(hr))
            {
            pIY->Fy() ;

            IX* pIX2 = NULL ;
            hr = pIY->QueryInterface(IID_IX, (void**)&pIX2) ;
            if (SUCCEEDED(hr))
            {
            pIX2->Fx() ;
            pIX2->Release();
            }
            else
            {
            cout<<"Could not get interface IX from IY."<<endl; ;
            }
            pIY->Release() ;
            }


            pIX->Release() ;
            }
            else
            {
            cout<<"Could not create component."<<endl;;
            }

            // Uninitialize COM Library
            CoUninitialize() ;
            return 0;
            posted on 2010-12-02 11:00 BirdsHover 閱讀(346) 評論(2)  編輯 收藏 引用

            評論:
            # re: 使用最原始的調用COM組件的方法 (轉) 2010-12-02 11:02 | BirdsHover
            有些COM組件的tlb是做在dll中的,對待這種情況的處理方法如下:
            #import <msxml4.dll>
            using namespace MSXML2;
            try
            {
            ::CoInitialize(NULL);
            MSXML2::IXMLDOMDocument2Ptr xml;
            xml.CreateInstance(__uuidof(MSXML2::DOMDocument));
            if(!xml->load(_bstr_t(m_sFilePath)))
            return false;

            int i= 1;
            bool bNode = TRUE;
            MSXML2::IXMLDOMNodePtr node;




            _stprintf(strRoot,_T("/%s/%s/Property[%i]"),m_sRootNode,m_sSubNode,i);
            i++;

            node = xml->selectSingleNode(_bstr_t(strRoot));
            if (node)
            {
            MSXML2::IXMLDOMNamedNodeMapPtr pAttrs = NULL;
            MSXML2::IXMLDOMNodePtr pAttrItem;
            node->get_attributes(&pAttrs);
            }
            }
            catch(...)
            {
            return false;
            }
            請樓主試試  回復  更多評論
              
            # re: 使用最原始的調用COM組件的方法 (轉) 2010-12-02 11:02 | BirdsHover
            国产精品久久久久免费a∨| 免费精品99久久国产综合精品| 久久精品无码一区二区app| 久久综合狠狠综合久久97色| 久久人妻无码中文字幕| 久久成人国产精品二三区| 亚洲美日韩Av中文字幕无码久久久妻妇| 精品人妻伦九区久久AAA片69| 久久99精品久久久久久| 亚洲精品无码成人片久久| 99久久亚洲综合精品网站| 老男人久久青草av高清| 精品国产青草久久久久福利 | 成人免费网站久久久| 久久AAAA片一区二区| 久久99久久99小草精品免视看| 色老头网站久久网| 久久婷婷五月综合97色直播| 一级做a爰片久久毛片16| 久久超乳爆乳中文字幕| 99久久精品免费看国产一区二区三区| 久久久久亚洲精品中文字幕 | 婷婷国产天堂久久综合五月| 欧美精品一区二区精品久久 | 日本久久久久久中文字幕| 亚洲精品无码久久久久久| 亚洲国产成人精品无码久久久久久综合| 女人香蕉久久**毛片精品| 久久国产精品99精品国产987| 久久综合狠狠综合久久| 久久婷婷五月综合色高清| 97精品依人久久久大香线蕉97 | 精品久久久久久久久中文字幕| 日韩人妻无码一区二区三区久久 | 色综合久久中文字幕无码| 无码人妻少妇久久中文字幕| 9191精品国产免费久久| 91久久香蕉国产熟女线看| 久久久久99精品成人片| 久久99精品国产99久久6| 欧美一级久久久久久久大片|