JavaScript和Activex互動

來源:互聯網
上載者:User
文章目錄
  • add - 2011-8-5
資料交換
javascript資料類型沒有C++豐富,最好的方法就是把通過字串傳資料,按照約定打包然後解析。js傳給activex 傳資料如果不含中文,可以直接使用char*,工程屬性為多位元組編碼,activex給js傳字串則需要寬字元。。。
方法相互調用
js調用activex的函數最直接,在html網頁中定義了全域的activex 物體(OBJECT),js直接通過object的id操作控制項。通過activex中函數的外部名字調用成員函數。函數的外部名字定義在ctrl檔案中 DISP_FUNCTION_ID宏的第二個字串。一般的介面函數,使用DISP_FUNCTION_ID。

ativex調用js的函數,有點類似QT的訊號量機制。首先在activex中申明事件映射,事件函數內部只是FireEvent一下,在activex中可以隨意調用該事件函數。 js中實現該函數(同樣使用事件函數的外部名字)定義該函數的行為,然後當activex中調用該函數時,實際調用的是js的函數。事件函數,使用EVENT_CUSTOM_ID宏。

js和activex的資料交換是通過方法相互調用實現的。

代碼下載:http://download.csdn.net/source/3476200

add - 2011-8-5
activex控制項跟DLL原理一致,當html網頁中定義了多個控制項的OBJECT,他們的ID都相同。 這些控制項OBJECT共用著程式中的全域變數,全域回呼函數。對全域變數的修改最近一次生效。。。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.