没有PowerShell远程安装.msi?

时间:2014-11-12 05:58:43

标签: batch-file deployment vbscript installer windows-installer

我们需要在客户端站点安装多服务器系统。我想整理一个可以的脚本:

  1. 关闭远程计算机上的服务
  2. 在多台远程计算机上卸载软件
  3. 安装几个远程计算机的.msi文件
  4. 我与 psexec wmic 一起努力做点#2和#3。

    似乎必须有一种更简单的方法,而不必诉诸 PowerShell

1 个答案:

答案 0 :(得分:1)

首先,请参阅此主题 WSH Remoting Remote Install on Windows Server 2012 R2

然后,您可以尝试使用VbsEdit中提供的 VBScript库(我不想提出软件建议,但我认为是允许的因为我不隶属,并且想建议它解决问题):

以下是远程安装软件的脚本:

' Install Software on a Remote Computer
Const wbemImpersonationLevelDelegate = 4

Set objWbemLocator = CreateObject("WbemScripting.SWbemLocator")
Set objConnection = objwbemLocator.ConnectServer _
    ("WebServer", "root\cimv2", "fabrikam\administrator", _
         "password", , "kerberos:WebServer")
objConnection.Security_.ImpersonationLevel = wbemImpersonationLevelDelegate

Set objSoftware = objConnection.Get("Win32_Product")
errReturn = objSoftware.Install("\\atl-dc-02\scripts\1561_lab.msi",,True)

以下是停止服务的脚本:

' Stop Services Running Under a Specific Account
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set colServices = objWMIService.ExecQuery _
    ("Select * from Win32_Service Where StartName = '.\netsvc'")

For Each objService in colServices 
    errReturnCode = objService.StopService()
Next

以下是VbsEdit脚本库的截图:

VbsEdit Search Samples