麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

在javascript中使用com組件的簡單實現(xiàn)方法

2019-11-20 09:13:22
字體:
來源:轉載
供稿:網友

首先創(chuàng)建一個COM組件,插入一個雙接口Itest,在此接口上實現(xiàn)以下三個方法:

STDMETHODIMP Ctest::test(void) //無輸入輸出參數(shù) { // TODO: 在此添加實現(xiàn)代碼 MessageBox(NULL,L"test",L"test",MB_OK); return S_OK; } STDMETHODIMP Ctest::test1(BSTR a1) //有一個字符串輸入?yún)?shù) { // TODO: 在此添加實現(xiàn)代碼 MessageBox(NULL,a1,L"test",MB_OK); return S_OK; } STDMETHODIMP Ctest::test3(BSTR* a1) //有一個BSTR* 輸出參數(shù) { // TODO: 在此添加實現(xiàn)代碼 MessageBox(NULL,L"test3",L"test",MB_OK); *a1=::SysAllocString (L"烽火連三月家書抵萬金"); return S_OK; } 

COM 中的上述三個方法分別演示無輸入輸出參數(shù)、有一個輸入?yún)?shù)、有一個輸出參數(shù)三種情況。程序編制好后,用regsvr32在系統(tǒng)中注冊組件,然后就可以在IE中用javascript調用com 組件的方法了,分兩種情況掉用,示例如下:

1、直接調用com方法

建立一個html文本,并輸入以下內容:

<html>  <head>  <title> 調用com組件的方法示例 </title>  <script language="javascript">  document.write("<hr>")  var xml=new ActiveXObject("atldll.test.1")  xml.test()  xml.test1("向com方法中傳遞參數(shù)并調用com方法")         var str=xml.test3() //從com方法中返回參數(shù) document.write("str"+str)  document.write(“<hr>”)  </script>  </head>  <body> 演示IE腳本程序中調用com組件的方法 </body>  </html> 

2、在javascript函數(shù)中調用com方法

建立一個html文本,并輸入以下內容:

<html>  <head>  <title> donghailin active object </title>  <script type="text/javascript">  function displaymessage()  {  document.write("<hr>")  var xml=new ActiveXObject("atldll.test.1")  xml.test()  xml.test1("向com組件傳遞字符串")         var str=xml.test3() //從com組件返回字符串 document.write("str"+str)  document.write(“<hr>”)  }  </script>  </head>  <body>  <form>  <input type="button" value="Click me!" onclick="displaymessage()" >  </form>  </body>  </html> 

注意編寫的com組件供其他系統(tǒng)調用,因此輸入輸出參數(shù)字符串應是BSTR類型。

3、設置com組件的屬性的方法

首先在com組件中設置屬性。在接口類中贈加屬性變量

BSTR m_bstr;

右鍵單擊接口,選擇“贈加”-〉“添加屬性”在”添加屬性向導中“輸入屬性類型” 中輸入?yún)?shù)類型“BSTR” ,“屬性名”輸入“bstr",向導自動生成屬性函數(shù)put_bstr和get_bstr,如下:

STDMETHODIMP Ctest::get_bstr(BSTR* pVal) {  // TODO: 在此添加實現(xiàn)代碼  *pVal=m_bstr;  return S_OK; }  STDMETHODIMP Ctest::put_bstr(BSTR newVal) {  // TODO: 在此添加實現(xiàn)代碼  m_bstr=newVal;   MessageBox(NULL,m_bstr,L"屬性測試",MB_OK);  return S_OK; } 

下面的代碼演示在IE的javascript腳本中設置和獲得屬性

<html> <head> <title> donghailin active object </title>  <script type="text/javascript"> function displaymessage() { document.write("<hr>") var xml=new ActiveXObject("atldll.test.1") xml.bstr="滿園春色鎖不住一枝紅杏出墻來" //屬性是bstr,C++ 中屬性設置是put_bstr(...) document.write("屬性返回值是:"+xml.bstr) //c++中獲得屬性值get_bstr(變量指針) document.write("<hr>") } </script>  </head> <body> <table  align=center  width=50>  <form> <input type="button" value="Click me!" onclick="displaymessage()" > </form> </table>  </body> </html> 

以上這篇在javascript中使用com組件的簡單實現(xiàn)方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 成人综合一区二区 | 国产在线中文 | 美女视频大全网站免费 | 一级黄色电影网站 | 欧美五月婷婷 | 在线观看国产一区二区 | 激情综合在线观看 | 美女视频在线观看黄 | 一级看片免费视频 | 久久久三级免费电影 | 日本精品久久久一区二区三区 | 国产午夜免费不卡精品理论片 | 久久久久久久.comav | 久久成人免费网站 | 99精品视频在线免费观看 | 精品国产一区二区三区免费 | 高清av免费| 最近中文字幕一区二区 | 久久亚洲国产午夜精品理论片 | 成人国产精品一区 | 亚洲精品动漫在线观看 | 中国大陆高清aⅴ毛片 | 久久国产精品网 | 精品国产一区二区三区四 | 91精品福利视频 | 香蕉久久久精品 | 亚洲国产馆 | 国产亚洲精彩视频 | 一级一片免费看 | 欧美成年性h版影视中文字幕 | 成人福利软件 | 国产精品久久久久久久久久 | 亚洲综合精品 | 欧美 国产 综合 | 亚洲精中文字幕二区三区 | 欧美一级高清免费 | 91久久99热青草国产 | 国产九九 | 九九热在线视频观看这里只有精品 | 国产黄色一区二区 | 欧美视频在线观看一区 |