VBS中常用腳本代碼

將域用戶或租添加到本地組
Set objGroup = GetObject("WinNT://./Administrators")
Set objUser = GetObject("WinNT://testnet/Engineers")
objGroup.Add(objUser.ADsPath)
修改本地管理員密碼
Set objcnlar = GetObject("WinNT://./administrator, user")
objcnla.SetPassword " P@ssW0rd "
objcnla.SetInfo
彈出 YES or NO 的對話框,不同的選擇執行不同的代碼
intAnswer = Msgbox("Do you want to delete these files?", vbYesNo,
"Delete Files")
If intAnswer = vbYes Then
Msgbox "You answered yes."
Else Msgbox "You answered no."
End If
運行CMD命令行命令
set obshell=wscript.createobject("wscript.shell")
obshell.run ("ipconfig"),,true
如果要運行的命令中包含雙引號,可使用&chr(34)&代替
忽略代碼錯誤繼續執行
On Error Resume Next
放置於代碼的最開頭,當代碼運行出錯後並不停止跳出而是繼續執行下一條。適當應用會很有效果。
註冊表的修改/讀取/刪除/創建
Set wso = CreateObject("WScript.Shell") '聲明
wso.RegWrite "%Path%"'創建子鍵
wso.RegWrite "%Path%","%Value%"'修改"默認"鍵值
wso.RegWrite "%Path%",%Value%,%RegType% '修改特定類型的鍵值
'(字符串值 REG_SZ 可擴充字符串值 REG_EXPAND_SZ DWORD值 REG_DWORD 二進制值 REG_BINARY)
Set WSHShell= Wscript.CreateObject("Wscript.Shell")
WSHShell.RegRead (%Path%) '讀取註冊表子鍵或鍵值(一般用於判斷某一事件是否執行)
Set wso = CreateObject("WScript.Shell")
wso.RegDelete "%Path%" '刪除子鍵或鍵值
'(根鍵縮寫HKEY_CLASSES_ROOT HKCR HKEY_CURRENT_USER HKCU HKEY_LOCAL_MACHINE HKLM,其餘無)

程序代碼
Set wso = CreateObject("Wscript.Shell")
wso.RegWrite "HKLMSOFTWAREMicrosftWindows NT#1"
wso.RegWrite "HKLMSOFTWAREMicrosftWindows NT#1","0"
wso.RegWrite "HKLMSOFTWAREMicrosftWindows NT#1#2",0,REG_BINARY
wso.RegDelete "HKLMSOFTWAREMicrosftWindows NT#1"
Wscript.quit

文件的複製/刪除/創建/簡單的寫入
Set fso = Wscript.CreateObject("Scripting.FileSystemObject") '聲明
Set f = fso.CreateTextFile("%PATH%") '創建文件,其中f可任意,包含縮略名
f.WriteLine("VBS") '寫文件內容,該命令功能太簡單,目前看來只能用於TXT文件
f.Close
set c=fso.getfile("%path%") '拷貝某文件
c.copy("%PATH2%") '拷貝文件到指定地點
fso.deletefile("%PATH%") '刪除文件
Wscript.quit

程序代碼
Set fso = Wscript.CreateObject("Scripting.FileSystemObject")
Set f=fso.CreateTextFile("C:Sample.txt")
WriteLine("VBS")
f.close
set e=fso.getfile(C:Sample.txt)
e.copy("D:Sample.txt")
fso.deletefile(C:Sample.txt)
Wscript.quit

嚮應用程序輸出簡單的連串指令
dim program1 '聲明變量program1
program1= "%Path%" '應用程序路徑
set wshshell=createobject("wscript.shell") '聲明飲用函數
set oexec=wshshell.exec(program1) '運行程序
wscript.sleep 2000 '(該行命令未知作用.估計是設定延遲,請高手指點)
wshshell.appactivate "%WindowsName%" '激活運用程序窗口
wshshell.sendkeys "+{%KeyBoardName%}" '第一次輸出鍵盤按鍵指令前要加+
wshshell.sendkeys "555555" '在程序輸入欄中輸入運用該系列命令須首先確定程序可以實施連串的鍵盤操作,這在QQ登錄中最適用,如下例。

程序代碼
dim program1
program1="D:Program FilesTencentcoralQQ.exe"
set wshshell=CreateObject("wscript.shell")
set oexec=wshshell.exec(program1)
wscript.sleep 2000
wshshell.appactivate "QQ登錄"
wshshell.sendkeys "+{TAB}"
wshshell.sendkeys "250481892"
wscript.sleep 2000
wshshell.sendkeys "{TAB}"
wshshell.sendkeys "****************"
wscript.sleep 2000
wshshell.sendkeys "{ENTER}"
Wscript.quit

文件夾的簡單操作
Set fso = Wscript.CreateObject("Scripting.FileSystemObject") '聲明
Set f = fso.CreateFolder("%PATH%") 創建文件夾
Set e = getFolder(%PATH%) 類似於"綁定目標"
e.copy("%PATH2%") 複製文件夾
fso.deletefolder(%PATH%) 刪除文件夾

程序代碼
Set fso = Wscript.CreateObject("Scripting.FileSystemObject")
Set f = fso.CreateObject("C:sample")
f.copy("D:sample")
fso.deletefolder("C:sample")

'(由上例可以看出,文件夾的操作很多是和文件的操作相通的,因此VBS文件具有很多命令的統一性)
將某一指定文件夾的所有隻讀文件轉爲可讀文件
Const ReadOnly = 1 '設只讀屬性對應值爲1
Set FSO = CreateObject("Scripting.FileSystemObject") '聲明
Set Folder = FSO.GetFolder("%PATH%") '綁定文件夾
Set colFiles = Folder.Files '文件夾所有文件
For Each objFile in colFiles '下列語句應用於文件夾所有文件
If File.Attributes AND ReadOnly Then '這是關鍵之處,這裏應用了If判斷語句,來檢測文件屬性是否爲只讀
File.Attributes = File.Attributes XOR ReadOnly
'對判斷結果爲Ture(默認爲True)'執行XOR邏輯運算,將其改爲可讀
End If '結束判斷
Next
將Word文件另存爲文本文件
Const wdFormatText = 2 '設置常數值
(當該值爲8時另存爲HTML文檔,爲11時另存爲XML文檔)
Set objWord = CreateObject("Word.Application") '申明調用函數
Set objDoc = objWord.Documents.Open("%Path%") '打開某DOC文件
objDoc.SaveAs "%PATH2%", wdFormatText 另存爲……
objWord.Quit

程序代碼
Const wdFormatText = 2
Set objWord = CreateObject("Word.Application")
Set objDoc = objWord.Documents.Open("d:doc1.doc")
objDoc.SaveAs "g:doc1.txt", wdFormatText
objWord.Quit


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章