我保留了大量的vbscript用於在我的網絡上執行各種啓動腳本,並且我幾乎在所有這些腳本中都使用了一些函數。保持VBScript有組織
缺少複製和粘貼,沒有人有建議,我可以如何創建可重複使用的VBScript代碼庫。我並不反對使用代碼生成器,只要它不比複製和粘貼更令人頭疼。但任何建議,將不勝感激。
感謝
我保留了大量的vbscript用於在我的網絡上執行各種啓動腳本,並且我幾乎在所有這些腳本中都使用了一些函數。保持VBScript有組織
缺少複製和粘貼,沒有人有建議,我可以如何創建可重複使用的VBScript代碼庫。我並不反對使用代碼生成器,只要它不比複製和粘貼更令人頭疼。但任何建議,將不勝感激。
感謝
VBScript中有Execute
語句,所以如果你不想去WSF路線Tester101建議,你可以做一個包括這樣的:
Set fso = CreateObject("Scripting.FileSystemObject")
file = "your_library.vbs"
Execute fso.OpenTextFile(file, 1).ReadAll
Set foo = New FooClass
MsgBox foo.GetBar()
假設"your_library.vbs"
將包含一個類別定義爲FooClass
。
一定要在全局環境中調用Execute,否則您將進入範圍界定問題。
當然一定要嚴格控制所有文件以防止惡意使用。
我使用合成include
(如下所示)並將我的庫存儲在一個子目錄中。
Sub Include(scriptName)
Dim sScript
Dim oStream
With CreateObject("Scripting.FileSystemobject")
Set oStream = .OpenTextFile(scriptName)
End With
sScript = oStream.ReadAll()
oStream.Close
ExecuteGlobal sScript
End Sub
顯然,如果有一個錯誤在包含的腳本,你不會得到一個非常有用的錯誤消息(VBScript中不能告訴你行出現了什麼問題的。)一旦一切作品,然而...
Include "c:\script\stdlib.vbs"
Include "c:\script\INI.cls"
這可能有助於
http://hubpages.com/hub/Libraries_in_VBScript_Code
MSDN:使用Windows腳本文件(.wsf的)](http://msdn.microsoft .com/en-us/library/15x4407c.aspx)
http://en.wikipedia.org/wiki/Wind ows_Script_File – Tester101 2009-04-17 18:20:06