• <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 閱讀(359) 評論(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
            狠色狠色狠狠色综合久久| 中文字幕成人精品久久不卡| 99久久精品国产一区二区蜜芽| 久久久久国产精品麻豆AR影院| 日本加勒比久久精品| 日日噜噜夜夜狠狠久久丁香五月| 久久国产精品99国产精| 久久这里只有精品视频99| 中文字幕亚洲综合久久| 一本久久免费视频| 精品久久久久久国产牛牛app| 久久婷婷五月综合色99啪ak| 久久狠狠色狠狠色综合| 99久久国产热无码精品免费久久久久| 亚洲国产成人久久综合一 | 日本三级久久网| 久久久久免费看成人影片| 精品免费久久久久久久| 久久久91精品国产一区二区三区| 久久久久99精品成人片试看| 97精品国产97久久久久久免费| 久久人妻少妇嫩草AV无码专区| 狠狠色综合久久久久尤物| 国内精品久久国产| 精品久久久久久中文字幕| 青青草原综合久久| 久久久精品视频免费观看| 久久久久久国产精品美女| 精品久久久久久亚洲精品| 欧美久久一级内射wwwwww.| 久久精品女人天堂AV麻| 国产精品免费久久久久影院| 99久久精品国产毛片| 影音先锋女人AV鲁色资源网久久 | 欧美日韩精品久久免费| 久久精品国产福利国产秒| 无码精品久久一区二区三区| 国产精品一区二区久久| 精产国品久久一二三产区区别| 国产99久久久久久免费看| 久久精品天天中文字幕人妻|