麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > VBScript > 正文

可以從一臺遠程服務(wù)器運行 SP2 安裝程序Install.vbs

2020-07-26 12:01:36
字體:
供稿:網(wǎng)友
Install.vbs
發(fā)布者 Microsoft Corporation 腳本專家

此腳本由 scenario1.vbs 在一臺網(wǎng)絡(luò)主機上啟動。Install.vbs 可以在安裝了 SP2 的主機上以本地方式運行,它執(zhí)行以下任務(wù):

? 從一臺遠程服務(wù)器運行 SP2 安裝程序。

? 在主機上設(shè)置 AutoAdmin 和 RunOnce 兩個注冊表項。

? 將結(jié)果記錄到文本文件 computername-sp2-instlog.txt 并將該文件復制回管理工作站。

? 強制重新啟動,隨后 runonce.vbs 將自動啟動。


在基本方案中,SP 2 安裝程序文件位于列表中的所有網(wǎng)絡(luò)主機均可訪問的一臺遠程服務(wù)器上。在該方案的某種變化方案中,如果將 SP 2 安裝程序復制到本地主機并從這里運行,則應重命名此腳本(例如重命名為 install-remote.vbs),然后將 install-local.vbs 重命名為 install.vbs。您還必須對這些腳本中提到的 scenario1.vbs 和新的 install.vbs 做一些細微更改。

有關(guān)方案 1 以及各個腳本的作用的進一步說明,請參見對這些腳本的介紹,網(wǎng)址是:

http://www.microsoft.com/technet/scriptcenter/solutions/appcompat.msxp

Install.vbs 對應于 install.cmd,但增加了一些新功能;install.cmd 是 Application Compatibility Testing and Mitigation Guide for Windows XP Service Pack 2(Windows XP Service Pack 2 應用程序兼容性測試和緩解指南)“附錄”中介紹的附帶腳本之一。您可以從以下網(wǎng)址下載用來安裝該指南及其關(guān)聯(lián)腳本的 Windows Installer (.msi) 文件:

http://www.microsoft.com/downloads/details.aspx?FamilyId=9300BECF-2DEE-4772-ADD9-AD0EAF89C4A7&displaylang=en

要使用此腳本,請復制代碼,將代碼粘貼到記事本中,然后將腳本另存為 install.vbs。此腳本被設(shè)計成了作為 scenario1.vbs 啟動的進程的一部分自動運行。

腳本代碼 

復制代碼 代碼如下:

'****************************************************************************** 
'install.vbs 
'Author: Peter Costantini, the Microsoft Scripting Guys 
'Date: 9/1/04 
'Must be deployed to a client and launched remotely by scenario1.vbs. 
'Assumes that runonce.vbs is in same directory as script. 
'Assumes that Windows XP Service Pack 2 setup program is on a remote server 
'and runonce.vbs are in same directory as script. 
'1. Runs Service Pack 2 setup program from remote server to install 
'   Windows XP Service Pack 2. This could take one or two hours. 
'2. Configures the AutoAdmin and RunOnce registry settings necessary 
'   to run runonce.vbs. 
'3. Logs results to text file, <computername>-sp2-instlog.txt and copies 
'   the file back to admin workstation. 
'4. Forces a reboot of the local machine so that the AutoAdmin and RunOnce  
'   registry settings take effect. 
'****************************************************************************** 

On Error Resume Next 

'Initialize global constants and variables. 
Const FOR_APPENDING = 8 
g_strLocalFolder = "c:/temp-ac" 
'Change name of computer to actual administrative workstation or local  
'path to which log should be copied. 
g_strRemoteFolder = "http://<adminwkstn>/c$/temp-ac" 

'Get computer name. 
g_strComputer = GetComputerName 
g_strLogFile = g_strComputer & "-sp2-instlog.txt" 

'Create log file. 
Set objFSO = CreateObject("Scripting.FileSystemObject") 
Set objTextStream = objFSO.OpenTextFile(g_strLogFile, FOR_APPENDING, True) 
objTextStream.WriteLine "Windows XP Service Pack 2 " & _ 
 "Installation and Configuration Log: Phase 1" 
objTextStream.WriteLine Now 
objTextStream.WriteLine g_strComputer 
objTextStream.WriteLine String(Len(g_strComputer), "-") 

'Handle logic of calling functions and sub-routines to install Service Pack 2 
'and configure AutoAdministration. 
blnInstallSP = InstallSP 
If blnInstallSP = False Then 
  CopyLog 
  WScript.Quit 
End If 
blnAutoAdmin = ConfigAutoAdmin 
If blnAutoAdmin = False Then 
  CopyLog 
  WScript.Quit 
End If 
Reboot 

'****************************************************************************** 

Function GetComputerName 

Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!//." _ 
 &"/root/cimv2") 
Set colSystems = objWMIService.ExecQuery("SELECT * FROM Win32_ComputerSystem") 
For Each objSytem In colSystems 
  GetComputerName = objSytem.Name 
Next 

End Function 

'****************************************************************************** 

Function InstallSP 

'Edit this line to include the server and share name where the Windows XP 
'Service Pack 2 setup program is located. 
strInstallPath = "http://servername/xpsp2/WindowsXP-KB835935-SP2-ENU.exe " & _ 
 "/quiet /norestart /o" 

Set WshShell = CreateObject("Wscript.Shell") 
Set objExec = WshShell.Exec(strInstallPath)  
'This could take one or two hours. 
objTextStream.WriteLine "Installation started ..." 
If Err = 0 Then 
'Loop until Exec is finished - Status = 1. 
  Do While objExec.Status = 0 
'Pause for 10 seconds before checking. 
'To reduce network traffic, make interval longer. 
    WScript.Sleep 10000 
  Loop 
  objTextStream.WriteLine "Service Pack 2 installation completed." 
  InstallSP = True 
Else 
  objTextStream.WriteLine "Unable to install Service Pack 2." & VbCrLf & _ 
   "Error connecting to Service Pack 2 on server." & VbCrLf & _ 
   "Error number: " & Err.Number & VbCrLf & _ 
   "Error source: " & Err.Source & VbCrLf & _ 
   "Error description: " & Err.Description 
  InstallSP = False 
End If 
Err.Clear 

End Function 

'****************************************************************************** 

Function ConfigAutoAdmin 

Const HKEY_LOCAL_MACHINE = &H80000002 
strKeyPath1 = "SOFTWARE/Microsoft/Windows NT/CurrentVersion/Winlogon" 
strKeyPath2 = "SOFTWARE/Microsoft/Windows/CurrentVersion/RunOnce" 
strDefaultUserName = "Administrator" 
strDefaultPassword = "P@ssw0rd" 
strDefaultDomainName = "Contoso" 
intAutoAdminLogon = 1 
strRunOnceEntry = "MyScript" 
strRunoncePath = g_strLocalFolder & "/runonce.vbs" 

Set objReg = GetObject("winmgmts:{impersonationLevel=impersonate}!//" & _ 
 g_strComputer & "/root/default:StdRegProv") 

'Set strDefaultUserName to user with Administrator credentials. 
intRet1 = objReg.SetStringValue(HKEY_LOCAL_MACHINE, strKeyPath1, _ 
 "DefaultUserName", strDefaultUserName) 
If intRet1 <> 0 Then 
  objTextStream.WriteLine "Error: DefaultUserName not configured." 
End If 

'Set strDefaultPassword to password of default username. 
intRet2 = objReg.SetStringValue(HKEY_LOCAL_MACHINE, strKeyPath1, _ 
 "DefaultPassword", strDefaultPassword) 
If intRet2 <> 0 Then 
  objTextStream.WriteLine "Error: DefaultPassword not configured." 
End If 

'Uncomment next 5 lines and edit last parameter if default domain 
'for the credentials is different from that already set. 
'intRet3 = objReg.SetStringValue(HKEY_LOCAL_MACHINE, strKeyPath1, _ 
' "DefaultDomainName", strDefaultDomainName) 
'If intRet3 <> 0 Then 
'  objTextStream.WriteLine "Error: DefaultDomainName not configured." 
'End If 

'Turn on AutoAdminLogon 
intRet4 = objReg.SetStringValue(HKEY_LOCAL_MACHINE, strKeyPath1, _ 
 "AutoAdminLogon", "1") 
If intRet4 <> 0 Then 
  objTextStream.WriteLine "Error: AutoAdminLogon not configured." 
End If 

'Add MyScript entry to RunOnce subkey. 
intRet5 = objReg.SetStringValue(HKEY_LOCAL_MACHINE, strKeyPath2, _ 
 strRunOnceEntry, strRunoncePath) 
If intRet5 <> 0 Then 
  objTextStream.WriteLine "Error: MyScript RunOnce entry not configured." 
End If 

'Check that all registry write operations succeeded. 
If (intRet1 + intRet2 + intRet3 + intRet4 + intRet5) = 0 Then 
  objTextStream.WriteLine "AutoAdminLogon and RunOnce configured." 
  ConfigAutoAdmin = True 
Else 
  objTextStream.WriteLine "Error: AutoAdminLogon and RunOnce not fully " & _ 
   "configured." 
  ConfigAutoAdmin = False 
End If 

End Function 

'****************************************************************************** 

Sub Reboot 

Const FORCED_REBOOT = 6 
Set objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate," & _ 
 "(Shutdown)}!//" & g_strComputer & "/root/cimv2") 
Set colOSes = objWMIService.ExecQuery("SELECT * FROM Win32_OperatingSystem") 
objTextStream.WriteLine "Attempting to reboot ..." 
CopyLog 
For Each objOS In colOSes 'Only one objOS in collection 
  intReturn = objOS.Win32Shutdown(FORCED_REBOOT) 
  If intReturn <> 0 Then 
    Set objTextStream = objFSO.OpenTextFile(g_strLogFile, FOR_APPENDING, True) 
    objTextStream.WriteLine Now 
    objTextStream.WriteLine "Error: Unable to reboot. " & VbCrLf & _ 
     "Return code: " & intReturn 
  CopyLog 
  End If 
Next 

End Sub 

'****************************************************************************** 

Sub CopyLog 

'Close text file. 
objTextStream.WriteLine "Closing log and attempting to copy file to " & _ 
 "administrative workstation." 
objTextStream.WriteLine 
objTextStream.WriteLine String(80, "-") 
objTextStream.WriteLine 
objTextStream.Close 

'Copy log. 
If Not objFSO.FolderExists(g_strRemoteFolder) Then 
  objFSO.CreateFolder(g_strRemoteFolder) 
  If Err <> 0 Then 
    Err.Clear 
    Exit Sub 
  End If 
End If 
objFSO.CopyFile g_strLogFile, g_strRemoteFolder & "/" 

End Sub 

要獲得在線同行支持,請加入 msnews.microsoft.com 新聞服務(wù)器上的 microsoft.public.windows.server.scripting 社區(qū)。要提供反饋或報告示例腳本或“腳本指南”中的錯誤,請聯(lián)系 Microsoft TechNet。

免責聲明

此示例腳本不受任何 Microsoft 標準支持計劃或服務(wù)的支持。這里僅按原樣提供示例腳本,而不作任何類型的擔保。Microsoft 進一步明確拒絕所有的暗示擔保,包括但不限于對適銷性或?qū)μ囟康倪m用性的任何暗示擔保。使用或執(zhí)行示例腳本和文檔所引起的全部風險應由您自己承擔。在任何情況下,對于使用或不能使用示例腳本或文檔所引起的任何損害(包括但不限于商業(yè)利潤損失、業(yè)務(wù)中斷、商業(yè)信息丟失或其他資金損失所造成的損害),Microsoft、其作者以及參與腳本創(chuàng)建、生產(chǎn)或傳遞的任何其他人員都概不負責,即使 Microsoft 已被告知存在這些損害的可能性。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 国产精品剧情一区二区三区 | 欧美国产精品久久 | 蜜桃av鲁一鲁一鲁一鲁 | 久久综合爱 | 草久影视| 神马久久蜜桃 | 国产一区二区不卡 | 中文字幕在线播放不卡 | 性 毛片 | 最新av网址在线观看 | 欧美大电影免费观看 | fc2国产成人免费视频 | 一级国产精品一级国产精品片 | 免费视频xxxx | 欧美日韩在线看片 | 国产午夜精品一区二区三区四区 | 免费一级毛片在线播放视频 | 欧美极品免费 | 欧美成年人视频在线观看 | 欧美a∨亚洲欧美亚洲 | 国产精品久久久久久久久岛 | 在线免费亚洲 | 久久手机在线视频 | 久久久aa| 一区二区久久精品66国产精品 | 91亚洲免费视频 | 日本免费不卡一区二区 | 精品一区在线视频 | 欧美成人精品不卡视频在线观看 | 中文字幕一区二区三区久久 | 成年人黄视频 | 免费观看黄视频 | 亚洲精中文字幕二区三区 | 日本人乱人乱亲乱色视频观看 | 午夜天堂在线视频 | 91在线色视频 | 精品久久久久99 | 49vv看片免费 | 男男羞羞视频网站国产 | 性欧美极品xxxx欧美一区二区 | 成人一级片毛片 |