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

ScriptControl控件執(zhí)行自定義VBS腳本示例分析

 更新時(shí)間:2013年04月07日 11:29:35   作者:  
這篇文章主要介紹ScriptControl控件 msscript.ocx msscript.oca執(zhí)行自定義VBS腳本的示例代碼,需要的朋友可以參考下

ScriptControl控件-msscript.ocx msscript.oca

復(fù)制代碼 代碼如下:

'AllowUI:可讀寫(xiě),布爾值,檢測(cè)是否允許運(yùn)行用戶的接口元素.如果為False,則諸如消息框之類的界面元素不可見(jiàn).
'CodeObject: 返回宿主被調(diào)用的特定的公用成員對(duì)象.只讀.
'Modules:只讀.返回宿主提供給腳本的組件庫(kù)模塊.COM組件通常都是以對(duì)象收集的形式向用戶提供可以留給用戶二次開(kāi)發(fā)的對(duì)象集合,每一個(gè)收集即一個(gè)Modules(模塊).
'Language:設(shè)置或獲取腳本引擎解釋的語(yǔ)言,例如:VBScript.JScript.
'Name:返回模塊.過(guò)程.或者對(duì)象的名字,只讀屬性.
'Procedures:返回模塊中定義的過(guò)程,只讀.
'SitehWnd:窗口句柄,如果本控件以ActiveX控件創(chuàng)建,則此屬性為控件的容器;如果是以自動(dòng)化對(duì)象創(chuàng)建,則為0,即桌面.此屬性可讀寫(xiě).
'State:設(shè)置或返回控件的狀態(tài),如果為0,控件只執(zhí)行語(yǔ)句但不轉(zhuǎn)發(fā)事件,為1則為加入的本控件接受的對(duì)象轉(zhuǎn)發(fā)事件.
'Timeout:設(shè)置或返回控件的相應(yīng)腳本的超時(shí)值.當(dāng)超時(shí)值到達(dá)時(shí),將引發(fā)Timeout事件.也可設(shè)為-1,表示無(wú)超時(shí)設(shè)定.
'UseSafeSubset: 設(shè)置或返回宿主程序是否關(guān)心安全.宿主程序的安全級(jí)別可以從此屬性設(shè)置.
'Error:錯(cuò)誤對(duì)象,發(fā)生錯(cuò)誤時(shí),此屬性返回一個(gè)錯(cuò)誤對(duì)象.
'AddCode :往一個(gè)模塊加入一些代碼.格式為:AddCode code,可以調(diào)用多次.
'AddObject:向一個(gè)模塊加入一個(gè)對(duì)象,格式:ScriptControl.AddObject(name, object[,addMembers]),name為欲加入的對(duì)象名字,Object為實(shí)際的對(duì)象,addMembers為可選指示此對(duì)象是否為全局對(duì)象,False為局部對(duì)象.只有往本對(duì)象中加入對(duì)象后才能在腳本中使用
'Eval:求值表達(dá)式.格式為object.eval_r(expression) .
'ExecuteStatement: 解釋并執(zhí)行腳本語(yǔ)句.格式: object.ExecuteStatement statement.
'Reset: 丟棄所有的對(duì)象和代碼.State屬性將為0.
'Run:運(yùn)行一個(gè)指定的過(guò)程.格式:object.Run(procedureName,parameters()),procedureName為要運(yùn)行的過(guò)程名,parameters()為參數(shù)
'僅有兩個(gè)事件:error 和TimeOut.前者可以用于錯(cuò)誤捕獲,后者在腳本得不到響應(yīng)時(shí)發(fā)生.
Private Sub Command1_Click()
Dim strFun As String
Dim a, b As Long
a = 2
b = 3
strFun = "function Add(a,b)" & vbCrLf & "Add=a+b" & vbCrLf & "End   Function" & vbCrLf
ScriptControl1.Modules.Add "MyCode"
ScriptControl1.Modules.Item(1).AddCode strFun
MsgBox ScriptControl1.Run("Add", a, b)
End Sub
Private Sub Command2_Click()
Dim CodeStr As String
CodeStr = "msgbox 2+3" & vbCrLf   
ScriptControl1.ExecuteStatement CodeStr
End Sub
Private Sub Command3_Click()      //運(yùn)行print 運(yùn)算表達(dá)式
Dim CodeStr As String
CodeStr = Text1.Text
CodeStr = Mid(CodeStr, 6)
MsgBox ScriptControl1.Eval(CodeStr)
End Sub

相關(guān)文章

最新評(píng)論