溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

vbs如何調(diào)用外部對(duì)像和類(lèi)型庫(kù)

發(fā)布時(shí)間:2021-10-13 14:23:10 來(lái)源:億速云 閱讀:137 作者:小新 欄目:開(kāi)發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)vbs如何調(diào)用外部對(duì)像和類(lèi)型庫(kù),小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

先舉個(gè)例子,最近的flash網(wǎng)馬調(diào)用:
var Flashver = (new ActiveXObject("ShockwaveFlash.ShockwaveFlash.9")).GetVariable("$version").split(",");

這個(gè)ShockwaveFlash.ShockwaveFlash.9從何而來(lái),用exescope打開(kāi)flash9f.ocx選擇typelib,即可看到ShockwaveFlash.ShockwaveFlash.9對(duì)像的函數(shù),其中就有GetVariable。這就帶來(lái)另一個(gè)問(wèn)題,如何知是要打開(kāi)的是flash9f.ocx呢?如果只是針對(duì)這個(gè),可以用IE的組件管理器查看到。

那么我們調(diào)用其它的可不可以,像mstsc.exe,3389連接器的組件呢?注冊(cè)表查找mstsc.exe,找到的HKEY_CLASSES_ROOT\CLSID\{3523c2fb-4031-44e4-9a3b-f1e94986ee7f}\InprocServer32就是C:\WINDOWS\system32\mstscax.dll,然后用exescope打開(kāi)也可以看到這個(gè)組件的函數(shù)、屬性、方法等??梢院?jiǎn)單示例(md,只是能改mstsc.exe的各方面屬性值,一直打不開(kāi)連接界面,誰(shuí)來(lái)改改?):

Sub ExecuteConnection(strServer, strUser, strPW)
' create the client
Dim objMsRdpClient
Set objMsRdpClient = CreateObject("MsTscAx.MsTscAx.3")
objMsRdpClient.Server = strServer
objMsRdpClient.UserName =strUser
objMsRdpClient.FullScreen = false
objMsRdpClient.AdvancedSettings2.RedirectDrives = False
objMsRdpClient.AdvancedSettings2.RedirectPrinters = False
objMsRdpClient.AdvancedSettings2.RedirectPorts = False
objMsRdpClient.AdvancedSettings2.RedirectSmartCards = False

objMsRdpClient.AdvancedSettings2.ClearTextPassword = strPW
objMsRdpClient.StartConnected = True
WScript.echo "Before connecting"

wscript.echo objMsRdpClient.version
dim intResult
intResult = objMsRdpClient.Connect
WScript.echo "After connecting Result: " & intResult

End Sub

調(diào)用組件,不僅可以使用注冊(cè)表中找到的HKEY_CLASSES_ROOT\CLSID\{3523c2fb-4031-44e4-9a3b-f1e94986ee7f}\ProgID(上邊的例子就是CreateObject("MsTscAx.MsTscAx.3")
),也可以用HKEY_CLASSES_ROOT\CLSID,這也就是為什么我們?cè)赼sp木馬中也可以用到的classid,像海陽(yáng)頂端2006+源碼中的:

<object runat="server" id = "ws" scope = "page" classid = "clsid:72C24DD5-D70A-438B-8A42-98424B88AFB8"></object>
<object runat="server" id = "fso" scope = "page" classid = "clsid:0D43FE01-F093-11CF-8940-00A0C9054228"></object>
<object runat="server" id = "ws" scope = "page" classid = "clsid:F935DC22-1CF0-11D0-ADB9-00C04FD58A0B"></object>
<object runat="server" id = "sa" scope = "page" classid = "clsid:13709620-C279-11CE-A49E-444553540000"></object>
當(dāng)然其它別的網(wǎng)馬,基本調(diào)用的都是CLSID了,你可以隨便找一些網(wǎng)馬來(lái)看。
不過(guò)在vbs中好像不可以直接調(diào)用classid,放在wsf文件中就可以,當(dāng)然是html之類(lèi)的更無(wú)所謂了。

關(guān)于“vbs如何調(diào)用外部對(duì)像和類(lèi)型庫(kù)”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,使各位可以學(xué)到更多知識(shí),如果覺(jué)得文章不錯(cuò),請(qǐng)把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

vbs
AI