收藏的比較精典VBS代碼發(fā)布_第1頁
收藏的比較精典VBS代碼發(fā)布_第2頁
收藏的比較精典VBS代碼發(fā)布_第3頁
收藏的比較精典VBS代碼發(fā)布_第4頁
收藏的比較精典VBS代碼發(fā)布_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、收藏的比較精典 VBS代碼發(fā)布創(chuàng)建文件系統(tǒng)對象,用以處理驅動器、文件夾和文件Set fso = Wscript.CreateObject(Scripting.FileSystemObject)Set WshShell ifWscript.CreateObject(Wscript.Shell)創(chuàng)建系統(tǒng)Shell對象,用以運行程序等等刀劍 Onlinealreadyexist.txt)then如果找到文件 “ D:刀劍 Onlinealr eadyexist.txt刀劍刀劍Online.exe)運行“ D:刀劍刀劍 Online.exeelseif fso.fileexists( gengxinu

2、pdatedj.exe) then 否則,如果找到“WshShell.Run(”Wgengxinupdatedj.exe)運行 “dj.exeelse刀劍刀劍Online.exe)否則運行 “D:刀劍end if 根據(jù)條件執(zhí)行語句結束dj.exe 則刀僉II Online.exeVBS導入注冊表,然后執(zhí)行文件dim Wsh Set WshWScript.CreateObject(WScript.Shell)Wsh.RegWriteHKCUSOFTWAREAUDITIONAUTOSTART,O,REG_DWORD網絡游戲勁舞團1.5,REG_SZWsh.RegWrite HKCUSOFTWARE

3、AUDWsh.RegWriteHKCUSOFTWAREAUDITIONVERSION,1O1O,REG_DWORDWsh.ru npatcher.exePING內網不通就執(zhí)行關機的 VBSstrIP = 54被 PING 的內網機器Set objShell = CreateObject(WScript.Shell)If Not IsOnline(strlP)Then objShell.runshutdown-s -t 30 -c &chr(34)&機器即將關閉&chr(34)End IfFun cti onIsOn li ne(strComputer)IsO nline=

4、 falsestrCommand= %comspec% /c ping -n 2 -w 500 & strComputer & ”Set objExecObject = objShell.Exec(strCommand)Do While Not objExecObject.StdOut.AtEndOfStreamstrText = objExecObject.StdOut.ReadAll()If Instr(strText, Reply) 0 ThenIsOn li ne= trueEnd IfLoopEnd Function開機腳本VBS用于ARP邦定Set WshShell = Wscri

5、pt.CreateObject(Wscript.Shell)WshShell.ru narp -s 30-18-e5-33-01,0WshShell.ru narp -s 30-18-e5-33-07,0運行程序Dim aSet a = WScript.CreateObject(WScript.Shell)a.Run網絡游戲 大話西游llxy-2.exe運行oshell.rund:softhfhfgame3GameClie nt.l nk斷幵網絡連接strNICName = disable二netpci*Set objShell = CreateOb

6、ject(Wscript.Shell)strComma nd= devc on. exe&strNICNameobjShell.RunstrComma nd,0,False啟動網絡連接strNICName= enable=n etpci*Set objShell = CreateObject(Wscript.Shell)strComma nd= devc on. exe&strNICNameobjShell.RunstrComma nd,0,False刪除文件的VBS腳本目標位置2,tdim fso Set fso = CreateObject(Scripting.FileSystemObje

7、ct)fso.CopyFile 共享目標位置 1,true 添加 fso.CopyFile 共享rue 添加fso.DeleteFile目標位置 1XXX.lnk,true 刪除 fso.DeleteFile目標位置 2XXX.lnk,true 刪除Set FSO=NoThingWScript.quit將域用戶或租添加到本地組Set objGroup = GetObject(WinNT:/./Administrators)Set objUser = GetObject(WinNT:/testnet/Engineers)objGroup.Add(objUser.ADsPath)修改本地管理員密碼

8、Set objcnlar= GetObject(WinNT:/./administrator,user)objcnla.SetPassword PssW0rdobjc nl a.SetI nfo彈出YES or NO的對話框,不同的選擇執(zhí)行不同的代碼intAnswer= Msgbox(Do you want to delete these files?, vbYesNo, Delete Files)If intAnswer = vbYes ThenMsgbox You answered yes.Else Msgbox You answeredno.End Ifset obshell二wscri

9、pt.createobject(wscript.shell)obshell.ru n(ipco nfig),true如果要運行的命令中包含雙引號,可使用& chr(34 )& 代替忽略代碼錯誤繼續(xù)執(zhí)行On Error Resume Next 放置于代碼的最開頭,當代碼運行出錯后并不停止跳出而是繼續(xù)執(zhí)行下一條。適當應用會很有效果。注冊表的修改,讀取,刪除,創(chuàng)建聲明Set wso = CreateObject(WScript.Shell)wso.RegWrite%Path%創(chuàng)建子鍵wso.RegWrite%Path%,%Value%修改默認鍵值wso.RegWrite%Path%,%Value%,

10、%RegType%修改特定類型的鍵值(字符串值 REG_SZ 可擴充字符串值 REG_EXPAND_SZ DWORD 值 REG_DWORD 二進制值 REG_BINARY)Set WSHShell= Wscript.CreateObject(Wscript.Shell)WSHShell.RegRead (%Path%)讀取注冊表子鍵或鍵值(一般用于判斷某一事件是否執(zhí)行)Set wso = CreateObject(WScript.Shell)wso.RegDelete %Path%刪除子鍵或鍵值(根鍵縮寫 HKEY_CLASSES_ROOTHKCR HKEY_CURRENT_USER HKC

11、U HKEY_LOCAL_MACHINE HKLM,其余無)引用內容eg:Set wso = CreateObject(Wscript.Shell)wso.RegWriteHKLMSOFTWAREMicrosftWi ndowsNT#1wso.RegWriteHKLMSOFTWAREMicrosftWi ndowsNT#1,0wso.RegWriteHKLMSOFTWAREMicrosftWi ndowsNT#1#2,0,REG_BINARYwso.RegDeleteHKLMSOFTWAREMicrosftWi ndowsNT#1Wscript.quit文件的復制,刪除,創(chuàng)建,簡單的寫入Set

12、 fso = Wscript.CreateObject(Scripting.FileSystemObject)聲明Set f = fso.CreateTextFile(%PATH%)創(chuàng)建文件,其中f可任意,包含縮略名f.WriteLine(VBS)寫文件內容,該命令功能太簡單,目前看來只能用于TXT文件拷貝某文件f.Closeset c=fso.getfile(%path%)c.copy(%PATH2%)拷貝文件到指定地點fso.deletefile(%PATH%)刪除文件Wscript.quit引用內容eg.Set fso = Wscript.CreateObject(Scripting.F

13、ileSystemObject)WriteL in e(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聲明飲用函數(shù)運行程序program1= %Path%應用程序路徑 set wshshell=createobject(wscript.shell)set oexec=wshshell.exec(program1)wscript.sleep 2000(該行

14、命令未知作用.估計是設定延遲,請高手指點)wshshell.appactivate%Win dowsName%激活運用程序窗口wshshell.se ndkeys+%KeyBoardName%第一次輸出鍵盤按鍵指令前要加+wshshell.se ndkeys555555在程序輸入欄中輸入運用該系列命令須首先確定程序可以實施連串的鍵盤操作,這在QQ登錄中最適用,如下例。引用內容eg.dim program1program1=D:ProgramFilesTe ncen tcoralQQ.exeset wshshell=CreateObject(wscript.shell)set oexec=wsh

15、shell.exec(program1)wscript.sleep 2000wshshell.appactivateQQ登錄wshshell.se ndkeys+TABwshshell.se ndkeys250481892wscript.sleep 2000wshshell.se ndkeysTABwshshell.se ndkeys*wscript.sleep 2000wshshell.se ndkeysENTERWscript.quit文件夾的簡單操作Set fso = Wscript.CreateObject(Scripting.FileSystemObject)聲明Set f = fs

16、o.CreateFolder(%PATH%)創(chuàng)建文件夾Set e = getFolder(%PATH%)類似于綁定目標”e.copy(%PATH2%)復制文件夾fso.deletefolder(%PATH%)刪除文件夾引用內容eg.Set fso = Wscript.CreateObject(Scripting.FileSystemObject)Set f = fso.CreateObject(C:sample)f.copy(D:sample)fso.deletefolder(C:sample)(由上例可以看出,文件夾的操作很多是和文件的操作相通的,因此VBS文件具有很多命令的統(tǒng)一性)將某一指

17、定文件夾的所有只讀文件轉為可讀文件Co nst Read Only = 1設只讀屬性對應值為1Set FSO = CreateObject(Scripting.FileSystemObject)聲明Set Folder = FSO.GetFolder(%PATH%)綁定文件夾Set colFiles = Folder.Files文件夾所有文件For Each objFile in colFiles下列語句應用于文件夾所有文件If File.Attributes AND ReadOnlyThen 這是關鍵之處,這里應用了If判斷語句,來檢測文件屬性是否為只讀File.Attributes = F

18、ile.Attributes XOR ReadOnly對判斷結果為 Ture (默認為 True)執(zhí)行XOR邏輯運算,將其改為可讀End If結束判斷Next將Word文件另存為文本文件Const wdFormatText = 2 設置常數(shù)值(當該值為8時另存為HTML文檔,為11時另存為XML文檔)Set objWord = CreateObject(Word.Application)申明調用函數(shù)Set objDoc = objWord.Documents.Open(%Path%)打開某 DOC 文件objDoc.SaveAs %PATH2%, wdFormatText 另存為objWord

19、.Quit引用內容eg:Const wdFormatText =2Set objWord = CreateObject(Word.Application)Set objDoc = objWord.Documents.Open(d:doc1.doc)objDoc.SaveAs g:doc1.txt, wdFormatTextobjWord.QuitstrURL = InputBox(請輸入要讀的網址 ,朗讀網頁, If strURL = The nWscript.quitEnd IfSet ie = WScript.CreateObject(l nternetExplorer.Applicati

20、o n)ie.visible = Trueie.n avigate strURLDoWscript.Sleep 200Loop Un til ie.ReadyState = 4strC ontent = ie.docume nt.body.i nn erTextSet objVoice = CreateObject(SAPI.SpV oice)Set objVoice.Voice = objV oice.GetV oices(Name=Microsoft Simplified Chinese).Item(0) objVoice.Rate = 5 速度 :-10,10 0objVoice.Vol

21、ume = 100 聲音 :0,100 100 objVoice.Speak strContent本文來自 : 腳本之家 () 詳細出處參考: by sssa2000我們來看一看怎么利用fso來進行文件操作。Fso時vbs里進行文件操作的核心。作為黑客,不管學習什么語言,對文件的操作都應該是要了如指掌的,所以請大家仔細學習。不說廢話,先看 fso 由哪幾個對象組成:drive 對象:包含儲存設備的信息,包括硬盤,光驅, ram 盤,網絡驅動器drives 集合:提供一個物理和邏輯驅動器的列表file 對象:檢查和處理文件files 集合:提供一個文件夾中的文件列表folder 對象:檢查和處理

22、文件夾folders 集合:提供文件夾中子文件夾的列表textstream 對象:讀寫文本文件看看 fso 的方法:由于很多,所以我不會把每個的作用寫出來,如果有不懂的,自己查一下msd n。不要說沒有哦bulidpath:把文件路徑信息添加到現(xiàn)有的文件路徑上copyfilecopyfoldercreatefoldercreatetextfiledeletefiledeletefolderdreveexitsfileexitsfolderexistsgetabsolutepathname:返回一個文件夾或文件的絕對路徑getbase name返回一個文件或文件夾的基本路徑getdrive :返

23、回一個 dreve對象getdrive name :返回一個驅動器的名字getexte nsio nn ame:返回擴展名getfile: 返回一個 file 對象getfile name:返回文件夾中文件名稱getfoldergetpare ntfoldername:返回一個文件夾的父文件夾getspecialfolder: 返回指向一個特殊文件夾的對象指針gettempname:返回一個可以被createtextfile使用的隨機產生的文件或文件夾的名稱movefile movefolder opentextfile好了,看到這里我想大家也明白了一大半,可能后面都不用我多說了,腳本就是這么

24、簡單, 呵呵呵,還是繼續(xù)把。1、使用 fso 由于 fso 不是 wsh 的一部分,所以我們需要建立他的模型 例如 set fs=wscript.createobject( “ scripting.filesystemobject ”) 這樣就建立了 fso 的模型。如果要釋放的話也很簡單, set fs=nothing2、使用文件夾創(chuàng)建: 在創(chuàng)建前我們需要檢查是否存在,看一下程序 *createfolder.vbs* dim fs,sset fs=wscript.createobject( “ scripting.filesystemobject ”)if (fs.folderexists(

25、temp ”“ )c): thens=”is available”elses= ” not exist ”set foldr=fs.createfolder(temp ”“) c:end if 刪除、拷貝、移動刪除:set fs=wscript.createobject( “ scripting.filesystemobject ”) fs.deletefolder(win“docw: s ”)拷貝:set fs=wscript.createobject( “ scripting.filesystemobject ”) fs.copyfolderda“tac:” “dadta: ”注意,如果這

26、個時候c:data和d:data都存在,會出錯,復制也就會停止,如果要強制覆蓋,使用 fs.copyfolder “c:data” “d:data”, true移動set fs=wscript.createobject(“scripting.filesystemobject”)fs.movefolderd“atac: ” “dadta: ”關于通配符: 我們可以使用統(tǒng)配符,來方便操作: 例如, fs.movefolder :c:datate* ” , “ d :working ” 注意到沒有,我在目的路徑最后沒有使用“ ”也就是說我沒有這樣寫:te* ” , “d: ”這樣寫的話,如果 d:w

27、orking 目錄不存在, windows 就不會為我們自動創(chuàng)建這個目錄。還有一點,大家注意到沒有 上面說的都沒有涉及到 folder 對象,我們都是在利用 fso 提供 的方法,當然利用 folder 一樣可以的:set fs= wscript.createobject(“ scripting.filesystemobject”)set f=fs.getfolder(data“”c:)f.delete 刪除。如果有子目錄,也會被刪除f.copy “ d:working ” ,true 拷貝到 d:workingf.move : ” d:temp ” 移動到 d:temp特殊文件夾般指的就是系

28、統(tǒng)文件夾:windowssystem32 , 臨時文件夾,windows文件夾 看下面,我們使用環(huán)境變量來獲得 windows 目錄,關于環(huán)境變量我們會在后面詳細講道, 如果我忘記了 請大家提醒我set fs=wscript.createobject(“scripting.filesystemobject”)set wshshell=wscript.createobject(“ wscript.shell”)osdir=wshshell.ex pandenvironmentstrings( “%systemroot% ”) set f =fs.getfolder(osdir)wscript.e

29、cho f當然,還有簡單的方法 那就是使用 getspecialfolder() 這個方法使用 3 種值:0 表示 windows 文件夾,相關常量是 windowsfolder1 系統(tǒng)文件夾,相關常量是 systemfolder2 臨時目錄,相關常量 temporaryfolder 看下面的例子:*getspecialfolder*set fs=wscript.createobject(set wfolder=fs.getspecialfolder(0)set wfolder=fs.getspecialfolder(1)set wfolder=fs.getspecialfolder(2)“s

30、cripting.filesystemobject返回 windows 目錄 返回 system32 返回臨時目錄3、使用文件使用文件屬性:文件夾的屬性我沒有說,大家可以從文件屬性里舉一反三 文件屬性常用的就是:normal 0readonly 1hideen 2system 4set fs=wscript.createobject(“scripting.filesystemobject”)set f=fs.gerfile(inde“x.tdxt:”)f.attributes=f.attributes+1如果文件的屬性是 0,這里由于不知道 d:index.txt 的文件屬性,所以會發(fā)生不可預

31、測的結果, 那么就會變成 1。所以最好在改變屬性前查詢創(chuàng)建 創(chuàng)建前需要檢查文件是否存在,方法和前面說的文件夾的方法一樣 *file.vbs* set fs=wscript.createobject( “ scripting.filesystemobject ”) if fs.fileexists(asd.tx“t c:”) thens=” available ”else s=not exist ” set f=fs.createtextfile( asd.txt “ ”c: ) end if當然我們也可以使用 set f=fs.createtextfile( “ c:asd.txt”, tru

32、e) 來強制覆蓋已存在的文件。復制移動刪除文件和文件夾一樣 我們既可以使用 fso 提供的方法也可以用 file 對象set fs=wscript.createobject( fs.copyfile “ c:asd.txt” ,” fs.movefile “c:asd.txt ” ,“ scripting.filesystemobject ”) d:1asd.txt ” ,true 復制文件 ,如果已存在就強制覆蓋 ”移動fs.deletefile “c:asd.txt” 刪除 好了,下一章我們就要學習文件的讀寫了, 文件的讀寫是文件系統(tǒng), 尤其是黑客編程里面十 分重要的一部分,今天打字可能有

33、很多錯誤,大家看的時候仔細一點,不懂得多看看 msdn, 要提高水平只有靠自己,別人是幫不了你的 本文來自 : 腳本之家 () 詳細出處參考: VBS取得本機 IPstrComputer = .Set objWMIService = GetObject(winmgmts: & strComputer & rootcimv2)Set IPConfigSet = objWMIService.ExecQuery(Select IPAddress fromWin32_NetworkAdapterConfiguration Where IPEnabled=TRUE)For Each IPConfig i

34、n IPConfigSetIf Not IsNull(IPConfig.IPAddress) ThenFor Each strAddress in IPConfig.IPAddressWScript.Echo strAddressNextEnd IfNext2 取得本機計算機名 strComputer = . Set objWMIService = GetObject(winmgmts: & strComputer & rootcimv2) Set colComputers = objWMIService.ExecQuery(Select * from Win32_ComputerSystem

35、) For Each objComputer in colComputers Wscript.Echo objComputer.NameNext4 檢查升級包 strComputer = .Set objWMIService = GetObject(winmgmts: & strComputer & rootcimv2)fromSet colOperatingSystems = objWMIService.ExecQuery(Select * Win32_OperatingSystem)For Each objOperatingSystem in colOperatingSystemsWscr

36、ipt.Echo objOperatingSystem.ServicePackMajorVersion & . & objOperatingSystem.ServicePackMinorVersionNext5 檢查 Hot Fix strComputer = .Set objWMIService = GetObject(winmgmts: & strComputer & rootcimv2)Set colQuickFixes = objWMIService.ExecQuery (Select * from Win32_QuickFixEngineering) For Each objQuic

37、kFix in colQuickFixesWscript.Echo Description: & objQuickFix.DescriptionWscript.Echo Hot Fix ID: & objQuickFix.HotFixIDNext6 檢查本地管理員數(shù)目Set objNetwork = CreateObject(Wscript.Network) strComputer = objNetwork.ComputerNameSet objGroup = GetObject(WinNT:/ & strComputer & /Administrators,group)For Each ob

38、jUser in objGroup.MembersWscript.Echo objUser.NameNext7 磁盤系統(tǒng) strComputer = .Set objWMIService = GetObject(winmgmts: & strComputer & rootcimv2)Set colDisks = objWMIService.ExecQuery(Select * from Win32_LogicalDisk Where DriveType3)For Each objDisk in colDisksWscript.Echo Disk drive: & objDisk.DeviceI

39、D & - & objDisk.FileSystem Next8 檢測自動登錄是否開啟Const HKEY_LOCAL_MACHINE = &H80000002 strComputer = .Set objReg=GetObject(winmgmts: & strComputer & rootdefault:StdRegProv) strKeyPath = SoftwareMicrosoftWindows NTCurrentVersionWinLogon strValueName = AutoAdminLogon objReg.GetDWORDValue HKEY_LOCAL_MACHINE,

40、 strKeyPath, strValueName,dwValue If dwValue = 1 ThenWscript.Echo Auto logon is enabled.ElseWscript.Echo Auto logon is disabled.End If9 關閉自動登錄Const HKEY_LOCAL_MACHINE = &H80000002 strComputer = .Set objReg=GetObject(winmgmts: & strComputer & rootdefault:StdRegProv) strKeyPath = SoftwareMicrosoftWind

41、ows NTCurrentVersionWinLogon strValueName = AutoAdminLogon dwValue = 0 oReg.SetDWORDValue HKEY_LOCAL_MACHINE, strKeyPath, strValueName, dwValue 10 檢查 Guest 是否禁用Set objNetwork = CreateObject(Wscript.Network) strComputer = objNetwork.ComputerNameSet objUser = GetObject(WinNT:/ & strComputer & /Guest)I

42、f objUser.AccountDisabled ThenWscript.Echo The Guest account is disabled.ElseWscript.Echo The Guest account is enabled.End If11 關閉 GuestSet objNetwork = CreateObject(Wscript.Network) strComputer = objNetwork.ComputerNameSet objUser = GetObject(WinNT:/ & strComputer & /Guest)If objUser.AccountDisable

43、d ThenWscript.Echo The Guest account is already disabled.Else objUser.AccountDisabled = True objUser.SetInfoWscript.Echo The Guest account has been disabled.End If12 檢索本地共象 strComputer = .Set objWMIService = GetObject(winmgmts: & strComputer & rootcimv2)Set colShares = objWMIService.ExecQuery(Select

44、 * from Win32_Share)For each objShare in colShares Wscript.Echo Name: & objShare.Name Wscript.Echo Path: & objShare.Path Wscript.Echo Type: & objShare.TypeNext13 腳本檢索一個文件夾下 .txt 文件 汗哦 值得學習 Set objWMIService = GetObject(winmgmts:.rootcimv2)Set colFiles = objWMIService.ExecQuery(SELECT * FROM CIM_Data

45、File WHERE Path = Documents桌面 AND Drive = E: AND Extension = txt)Wscript.Echo Number of .txt files found: & colFiles.Count for each aa in colFilesNL=NL & vbcrlf & nextWscript.Echo NL14 我如何向用戶顯示一個用來選擇文件的對話框? 問:嗨, Scripting Guy !有沒有什么方法可以讓我使用腳本向用戶顯示一個對話框,供用戶選擇 文件使用?- BF 答:您好,BF。如果您使用的是Windows

46、2000,我們不知道實現(xiàn)此操作的方法,至少操作系統(tǒng)中沒有內置這樣的方法。但如果您使用的是Windows XP,情況就不同了。在Windows XP上,您可以使用“UserAccounts.CommonDialog ”對象向用戶顯示一個標準的“文件打開”對話框。可以用 類似以下代碼的腳本:Set objDialog = CreateObject(UserAccounts.CommonDialog) objDialog.Filter = All Files|*.* objDialog.InitialDir = C: intResult = objDialog.ShowOpenIf intResul

47、t = 0 Then Wscript.Quit Else Wscript.Echo objDialog.FileName End If 這是一個小腳本, 所以 讓我 們逐行進行解釋吧。 我 們首先創(chuàng)建一個對 UserAccounts.CommonDialog 對象 的對象引用(名為“ objDialog ”)。接著,我們設置對話框的“篩選”屬性。我們要顯示所有 文件,所 以我們將篩選設置成這樣: objDialog.Filter = All Files|*.* 假如我們只想顯示文本文件,那該怎么辦?在這種情況下,我們將使用以下篩選: objDialog.Filter = Text Files|

48、*.txt您也許能夠看出它是如何運行的:我們?yōu)槲募愋吞峁┱f明(Text Files),然后插入一個豎線分隔符(|),最后使用標準的通配符來指示所有 .txt 文件 (*.txt) 。是不是想默認顯示 .txt 文件,然 后為用戶提供查看所有文件的選項?那么可以使用以下代碼: objDialog.Filter = Text Files|*.txt|All Files|*.* 試一試,您就明白我們的意思了。C 的根文件夾然后,我們指定默認文件夾。默認情況下,我們希望對話框顯示位于驅動器中的文件,所以我們這樣設置“ InitialDir ”屬性:objDialog.InitialDir = C:希

49、望顯示 C:Windows 文件夾中的文件嗎?那么可以使用以下代碼: objDialog.InitialDir = C:Windows 不必擔心:這是一個真正的“文件打開”對話框,所以您可以隨意單擊,并且可以隨時停下 來。您從C:Windows 開始并不意味著您只能打開該文件夾中的文件。 最后,我們使用下面這行代碼顯示對話框:intResult = objDialog.ShowOpen 現(xiàn)在,我們只需坐下來,等待用戶選擇文件并單擊“確定” (或者等待用戶單擊“取消” )。 如果用戶單擊“取消”,則變量 intResult 將被設置為 0。在我們的腳本中,我們檢查intResult 的值,如果是

50、 0,我們將只需要使用 Wscript.Quit 來終止此腳本。但是如果用戶實際上選擇了文件并單擊了 “確定”,那該怎么辦?在這種情況下, intResult 將 被設置為-1,“ FileDialog ”屬性將被設置為所選文件的路徑名。我們的腳本只回顯路徑名,這意味著 我們將得到類似以下內容的輸出:C:WINDOWSPrairie Wind.bmp 不用說,您并不局限于只回顯文件路徑。實際上,您可以使用 WMI 、 FileSystemObject 或 一些其他技術來綁定該文件, 然后對其執(zhí)行刪除、 復制、 壓縮或檢索文件屬性等操作 您對文件能夠執(zhí) 行的操作差不多都可以對它執(zhí)行。但無論如何,

51、您都需要使用腳本。 順便說一句,使用此方法,您一次只能選擇一個文件,而不能按住“Ctrl ”鍵選擇多個文件。有一種方法可以選擇多個文件,至少在 XP 計算機上可以,但是我們只能將此問題留到以后的專欄中 討論了。15 我如何確定進程是在哪個帳戶下運行的?問:嗨, Scripting Guy !我有一個腳本,它返回關于計算機上運行的所有進程的信息,只是我不 知道如何獲得這些進程在其下運行的用戶帳戶的名稱。您可以幫助我嗎?- DL答:您好, DL 。是的,我們可以幫助您。確定進程是在哪個帳戶下運行的,實際上相當簡單, 只是如何著手執(zhí) 行此操作并不是特別顯而易見的。如果您與大多數(shù)人一樣,那么您可能會通

52、過掃描 Win32_Process 類的屬性來查找名為 Account 或 UserName 或類似的屬性。您很有可能找不到。出現(xiàn)這種情況 的原因是:Win32_Process 沒有可以告訴您進程在哪個帳戶下運行的屬性。您需要使用“ GetOwner ”方法來捕捉此信息。下面這個腳本可以告訴您 Microsoft Word (Winword.exe) 在哪個帳戶下運行:strComputer = .Set objWMIService = GetObject(winmgmts: & strComputer & rootcimv2)Set colProcessList = objWMIService.ExecQuery _ (Select * from Win32_Process Where NameWinword.exe)For Each objProcess in colProcessList objProcess.GetOwner strUserName, strUserDomain Wscript.Echo Process & objProcess.Name & is owned by _ & strUserDomain & & strUserName & .

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論