一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - VBS - 在vbscript中判斷COM類是否存在的實現代碼

在vbscript中判斷COM類是否存在的實現代碼

2020-08-19 10:33老劉 VBS

在VBS中,我們有時需要判斷一個COM類是否存在,以便執行不同的操作,需要的朋友可以參考下

該文章由老劉原創,轉載需注明原作者昵稱。

在VBS中,我們有時需要判斷一個COM類是否存在,以便執行不同的操作。
這里介紹2種基本的方法,其函數的返回值為Bool值,為真則證明COM類存在。

1、注冊表查詢法。

?
1
2
3
4
5
6
7
8
Function ComExist(ComName)
    Dim WshShell
    Set WshShell = CreateObject("Wscript.Shell")
    On Error Resume Next
    WshShell.RegRead("HKCR\"&ComName&"\")
    ComExist = CBool(Err.Number = 0)
    On Error Goto 0
End Function

該方法用到了一個Win Script Host附帶的COM類。通過直接查詢注冊表來確定COM類是否有效。
優點:快速,無需創建對象。
缺點:一些COM類的卸載殘留可能會使該函數誤判。如果WScript.Shell對象異常,會無法判斷。

2、嘗試創建法。

?
1
2
3
4
5
6
Function ComExist(ComName)
    On Error Resume Next
    Set CreateTest = CreateObject(ComName)
    ComExist = CBool(Err.Number = 0)
    On Error Goto 0
End Function

該方法比較簡單粗暴,直接創建下COM對象看看成不成功。
優點:非常的嚴謹&靠譜。
缺點:如果用這個來測試一些創建&銷毀時間長的類(如Word.Application),會耗費大量時間,并留下進程殘留(如Word對象需手動.Quit)。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产一级特黄在线播放 | 精品无人区麻豆乱码无限制 | 国产精品理论片 | 日本又大又硬又粗的视频 | 91久久精品青青草原伊人 | 国产私拍精品88福利视频 | 国产在线99| 午夜DV内射一区区 | 法国老妇性xx在线播放 | 色姑娘色综合 | 小小水蜜桃视频高清在线播放 | 午夜私人福利影院 | 四虎麻豆国产精品 | 息与子中文字幕完整在线 | 国产精品亚洲va在线观看 | 寡妇快点好大好爽视频 | 视频一区二区国产无限在线观看 | 翁熄性放纵交换01 | 日日精品 | 国产男女性特黄录像 | 国产黄色大片网站 | 国产亚洲精品第一综合另类 | 涩情主播在线翻车 | 天天草b| 亚洲 日韩 国产 中文视频 | 麻豆在线传煤 | 亚洲欧美综合一区 | brazzers办公室 | 不知火舞被c视频在线播放 不卡一区二区三区卡 | 精品久久成人免费第三区 | 小嫩videos | 甜性涩爱 | 福利一区福利二区 | 国产一区二区在线观看视频 | 亚洲成年男人的天堂网 | 亚洲国产五月综合网 | 网红刘婷hd国产高清 | 69av导航| 成人资源在线观看 | 美女黄板视频 | 亚洲欧美专区精品伊人久久 |