国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > VBScript > 正文

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

2020-06-26 18:08:30
字體:
供稿:網(wǎng)友
Install.vbs 
發(fā)布者 Microsoft Corporation 腳本專家 

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

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

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

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

? 強(qiáng)制重新啟動,隨后 runonce.vbs 將自動啟動。 


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

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

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

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

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

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

腳本代碼  

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

'******************************************************************************  
'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 = "//<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 = "//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。 

免責(zé)聲明 

此示例腳本不受任何 Microsoft 標(biāo)準(zhǔn)支持計劃或服務(wù)的支持。這里僅按原樣提供示例腳本,而不作任何類型的擔(dān)保。Microsoft 進(jìn)一步明確拒絕所有的暗示擔(dān)保,包括但不限于對適銷性或?qū)μ囟康倪m用性的任何暗示擔(dān)保。使用或執(zhí)行示例腳本和文檔所引起的全部風(fēng)險應(yīng)由您自己承擔(dān)。在任何情況下,對于使用或不能使用示例腳本或文檔所引起的任何損害(包括但不限于商業(yè)利潤損失、業(yè)務(wù)中斷、商業(yè)信息丟失或其他資金損失所造成的損害),Microsoft、其作者以及參與腳本創(chuàng)建、生產(chǎn)或傳遞的任何其他人員都概不負(fù)責(zé),即使 Microsoft 已被告知存在這些損害的可能性。 
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 临漳县| 玉屏| 巴青县| 南丰县| 福建省| 济源市| 呼和浩特市| 额敏县| 沂水县| 沽源县| 永川市| 怀柔区| 利川市| 商都县| 晋中市| 安丘市| 罗定市| 铜梁县| 常山县| 鹤峰县| 奉化市| 垣曲县| 金塔县| 泸定县| 花垣县| 林西县| 肇庆市| 朝阳区| 衡山县| 佛教| 绿春县| 扎鲁特旗| 特克斯县| 钦州市| 特克斯县| 万全县| 巫山县| 海安县| 连云港市| 石家庄市| 马山县|