• <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>

            fengyue

            如何動態加載ActiveX控件

            我們的開發平臺需要用第三方控件(ActiveX)時,一般采用的方法是,先在VC中的插入控件,VC會自動生成操作控件的類,然后創建一個控件,并處理對應的事件。如果控件接口變化,更新控件,需要重復操作且編譯才能發布,比較麻煩。顯然,動態加載ActiveX控件能解決這個問題。如果做過頁面編程就會知道,頁面腳本里邊可以動態創建控件的。我們的開發平臺是否也能動態創建控件呢,答案是肯定的。下面介紹一下如何動態加載ActiveX控件:
            1.首先是獲取到控件的GUID,可以通過配置。
            2.獲取控件的方法、事件等屬性,方便后面的事件處理
            3.采用CWnd::CreateControl創建控件實例,如果是通過腳本調用控件接口,可以將該控件添加到腳本引擎。
               CreateControl原型如下:

               BOOL CreateControl( REFCLSID clsid, LPCTSTR pszWindowName, DWORD dwStyle,
               
            const POINT* ppt, const SIZE* psize, CWnd* pParentWnd, UINT nID,
               CFile
            * pPersist = NULL, BOOL bStorage = FALSE, BSTR bstrLicKey = NULL );

            4.處理控件觸發的事件
               重載父窗體的OnCmdMsg函數,處理對應的事件即可,OnCmdMsg原型如下:

                virtual BOOL OnCmdMsg(UINT nID, int nCode, void* pExtra,
              AFX_CMDHANDLERINFO
            * pHandlerInfo);

             

            posted on 2011-11-30 08:51 風悅 閱讀(3864) 評論(1)  編輯 收藏 引用 所屬分類: C/C++

            Feedback

            # re: 如何動態加載ActiveX控件 2011-11-30 10:15 暖寶寶指南

            剛好用到,謝謝分享!  回復  更多評論   

            久久久久久久99精品免费观看| 久久无码专区国产精品发布| 青青草原综合久久| 久久国产精品无码网站| 久久久久亚洲AV无码专区首JN| 97热久久免费频精品99| 久久久久久国产精品美女| 中文精品久久久久人妻不卡| 色噜噜狠狠先锋影音久久| 久久人人爽人人爽人人片AV不| 婷婷久久久亚洲欧洲日产国码AV| 久久精品国产免费| 无码人妻久久一区二区三区| 午夜视频久久久久一区 | 国内精品久久国产大陆| 精品久久久久久无码中文字幕| 色狠狠久久AV五月综合| 久久久久国产精品熟女影院| 久久精品国产福利国产琪琪| AV狠狠色丁香婷婷综合久久| 久久AV高潮AV无码AV| 国内精品久久久久影院网站 | 激情伊人五月天久久综合| 香蕉久久影院| 日产精品99久久久久久| 中文成人久久久久影院免费观看| www.久久热.com| 青青热久久国产久精品| 99久久国产综合精品成人影院| 久久天天躁狠狠躁夜夜96流白浆 | 亚洲精品无码久久不卡| 久久99精品免费一区二区| 99久久免费国产精品热| 精品久久久久香蕉网| 久久综合久久自在自线精品自| 亚洲狠狠婷婷综合久久蜜芽| 人人狠狠综合久久88成人| 国内精品久久久久影院日本| www久久久天天com| 久久精品一区二区国产| 久久精品国产半推半就|