欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時(shí)間:2016年08月17日 11:12:28   投稿:jingxian  
下面小編就為大家?guī)?lái)一篇在javascript中使用com組件的簡(jiǎn)單實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧,祝大家游戲愉快哦

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

STDMETHODIMP Ctest::test(void) //無(wú)輸入輸出參數(shù) 
{ 
// TODO: 在此添加實(shí)現(xiàn)代碼 
MessageBox(NULL,L"test",L"test",MB_OK); 

return S_OK; 
} 

STDMETHODIMP Ctest::test1(BSTR a1) //有一個(gè)字符串輸入?yún)?shù) 
{ 
// TODO: 在此添加實(shí)現(xiàn)代碼 
MessageBox(NULL,a1,L"test",MB_OK); 
return S_OK; 
} 
STDMETHODIMP Ctest::test3(BSTR* a1) //有一個(gè)BSTR* 輸出參數(shù) 
{ 
// TODO: 在此添加實(shí)現(xiàn)代碼 

MessageBox(NULL,L"test3",L"test",MB_OK); 
*a1=::SysAllocString (L"烽火連三月家書抵萬(wàn)金"); 
return S_OK; 
} 

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

1、直接調(diào)用com方法

建立一個(gè)html文本,并輸入以下內(nèi)容:

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

演示IE腳本程序中調(diào)用com組件的方法 
</body> 
 
</html> 

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

建立一個(gè)html文本,并輸入以下內(nèi)容:

<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)調(diào)用,因此輸入輸出參數(shù)字符串應(yīng)是BSTR類型。

3、設(shè)置com組件的屬性的方法

首先在com組件中設(shè)置屬性。在接口類中贈(zèng)加屬性變量

BSTR m_bstr;

右鍵單擊接口,選擇“贈(zèng)加”-〉“添加屬性”在”添加屬性向?qū)е小拜斎雽傩灶愋汀?中輸入?yún)?shù)類型“BSTR” ,“屬性名”輸入“bstr",向?qū)ё詣?dòng)生成屬性函數(shù)put_bstr和get_bstr,如下:

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

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

<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="滿園春色鎖不住一枝紅杏出墻來(lái)" //屬性是bstr,C++ 中屬性設(shè)置是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組件的簡(jiǎn)單實(shí)現(xiàn)方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • JS代碼觸發(fā)事件代碼實(shí)例

    JS代碼觸發(fā)事件代碼實(shí)例

    這篇文章主要介紹了js代碼觸發(fā)事件代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • Bootstrap模態(tài)窗口源碼解析

    Bootstrap模態(tài)窗口源碼解析

    這篇文章主要為大家詳細(xì)解析了Bootstrap模態(tài)窗口源碼,基本每行都加了注釋,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-02-02
  • JavaScript實(shí)現(xiàn)圖片合成下載的示例

    JavaScript實(shí)現(xiàn)圖片合成下載的示例

    這篇文章主要介紹了JavaScript實(shí)現(xiàn)圖片合成下載的示例,幫助大家更好的理解和學(xué)習(xí)JavaScript,感興趣的朋友可以了解下
    2020-11-11
  • JavaScript對(duì)象學(xué)習(xí)小結(jié)

    JavaScript對(duì)象學(xué)習(xí)小結(jié)

    JavaScript 中的所有事物都是對(duì)象:字符串、數(shù)值、數(shù)組、函數(shù).幾乎用到的每個(gè)js都離不開它的js對(duì)象。此外,JavaScript 允許自定義對(duì)象,下面跟著小編學(xué)習(xí)javascript對(duì)象學(xué)習(xí)小結(jié),需要的朋友可以參考下
    2015-09-09
  • 微信小程序之video組件視頻播放

    微信小程序之video組件視頻播放

    video控件是微信小程序提供的系統(tǒng)組件之一,用于實(shí)現(xiàn)播放視頻的功能,這篇文章主要給大家介紹了關(guān)于微信小程序之video組件視頻播放的相關(guān)資料,需要的朋友可以參考下
    2022-04-04
  • 關(guān)于JS中的apply,call,bind的深入解析

    關(guān)于JS中的apply,call,bind的深入解析

    下面小編就為大家?guī)?lái)一篇關(guān)于JS中的apply,call,bind的深入解析。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來(lái)看看吧
    2016-04-04
  • js實(shí)現(xiàn)簡(jiǎn)潔的滑動(dòng)門菜單(選項(xiàng)卡)效果代碼

    js實(shí)現(xiàn)簡(jiǎn)潔的滑動(dòng)門菜單(選項(xiàng)卡)效果代碼

    這篇文章主要介紹了js實(shí)現(xiàn)簡(jiǎn)潔的滑動(dòng)門菜單(選項(xiàng)卡)效果代碼,涉及javascript鼠標(biāo)事件操作頁(yè)面元素樣式切換的實(shí)現(xiàn)技巧,簡(jiǎn)單實(shí)用,需要的朋友可以參考下
    2015-09-09
  • JavaScript獲取Url里的參數(shù)

    JavaScript獲取Url里的參數(shù)

    這篇文章主要介紹了JavaScript獲取Url里的參數(shù),需要的朋友可以參考下
    2014-12-12
  • bootstrap實(shí)現(xiàn)二級(jí)下拉菜單效果

    bootstrap實(shí)現(xiàn)二級(jí)下拉菜單效果

    這篇文章主要為大家詳細(xì)介紹了bootstrap實(shí)現(xiàn)二級(jí)下拉菜單效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-11-11
  • JavaScript Archive Network 集合

    JavaScript Archive Network 集合

    JavaScript Archive Network 集合...
    2007-05-05

最新評(píng)論