使用PowerShell调用WMI对象,你可以执行下面的脚本来安装你的MSI安装包:
远程代码如下:
$box="deviis01" #this is the name of your server
$product= [WMICLASS]"\\$box\ROOT\CIMV2:win32_Product"
Write-Host "Installing software on $box"
$product.Install("c:\Setup \somesoftwarepackage.msi")
它能静默安装还是蛮好的,这样就不再担心要使用命令参数了。
注:有的安装包在安装过程中可能会要求用户选择或者设置很多选项,这另当别论。
二、安装EXE应用程序
这里以安装搜狗五笔为例
远程安代码如下:
Write-Host "Installing software on $box"
([WMICLASS]"\\$box\ROOT\CIMV2:win32_process").Create(
"cmd.exe /c
c:\sogou.exe
/S /v`” /qn")
本机Powershell命令安装:cmd.exe /c c:\sogou.exe /S /v /qn
上面的脚本实际上是在远程机器上新创建了一个进程,先调用cmd.exe,将可执行安装包以参数的形式传递过去,然后再把安装程序需要的参数也传递过去。这其中牵扯到了很多字符串的转义,与引号转换,可要格外小心啦。
尽管对IT管理员或者开发者来讲,这是一个很常见的任务,但是在网上能找到“远程
安装
一个msi包或者
exe
应用程序”的相关文档还是比较少的。甚至有人在一些论坛的评论中写道,这不可能实现。事实上还是可以的。我会在本文提供两段代码,分别负责远程
安装
MSI包和
EXE
可执行应用程序。
一、
安装
MSI包
使用
PowerShell
调用WMI对象,你可以执行下面的脚本来
安装
你的MSI
安装
包: 代码如下:$box=”deviis01″ #this is the name of your server$product= [WMICLASS]”\\$box\ROOT\CIMV2:win32_Product”Write
soft.
exe
/sAll /msi /norestart ALUSERS=1 EULA_ACCEPT=YES
成功
安装
了AdobeReader
转载于:https://blog.51cto.com/640006/2064266
公司一款vpn软件,无对应product code 信息,不支持msi
安装
,让写一个迭代产品的
powershell
脚本,方便大家更新(注:此两款所属不同产品,所以没办法推送迭代),有
安装
包放至共享的目录下,且是
exe
格式。许多(但也许不是全部)有静默
安装
的方法,但它们都不同,有时需要某种无人值守的
安装
脚本。
使用到的软件:将
exe
转换为msi.msi
要转换的软件:360se_setup.
exe
、sogou_pinyin_90b.
exe
、sogou_wubi_31a.
exe
双击运行转换软件
点击“Setup
Exe
cutable” 文本框后的“…”,选择要转换/打包的软件
然后点击“Build MSI”按钮,稍等一...
但是关掉IE的严格模式之后,我们可以用IE做一下webdriver的工作,模拟点击和延迟加载可以更精确,当然主要原因是因为我在寻找元素的时候出了岔子,世界上几乎所以的
powershell
爬虫都是爬取的百度,然后百度的网页上有class,然后这个class还可以用,但是我就比较奇怪,我爬的那个button在一环套一环的div里,没有class,没有其他可供挑选的元素,然后虽然我在浏览器用xpath定位到了它,回过头来我发现
powershell
里好像没有相关代码来使用XPATH,最后不了了之。
在文本编辑器中创建一个新
文件
,命名为install.bat
在
文件
中输入
安装
命令,如"start /wait
安装
文件
路径\
安装
文件
名.
exe
/quiet"
将所有需要
安装
的
exe
文件
复制到同一
文件
夹中
双击install.bat
文件
运行,即可实现批量
安装
。
注意: 请确保在运行install.bat
文件
时有管理员权限。
Powershell
是运行在
windows
机器上实现系统和应用程序管理自动化的命令行脚本环境。你可以把它看成是命令行提示符cmd.
exe
的扩充,不对,应当是颠覆。
powershell
需要.NET环境的支持,同时支持.NET对象。微软之所以将
Powershell
定位为Power,并不是夸大其词,因为它完全支持对象。其可读性,...
尽管对IT管理员或者开发者来讲,这是一个很常见的任务,但是在网上能找到“远程
安装
一个msi包或者
exe
应用程序”的相关文档还是比较少的。甚至有人在一些论坛的评论中写道,这不可能实现。事实上还是可以的。我会在本文提供两段代码,分别负责远程
安装
MSI包和
EXE
可执行应用程序。一、
安装
MSI包使用
PowerShell
调用WMI对象,你可以执行下面的脚本来
安装
你的MSI
安装
包:复制代码 代码如下:$box...
我们都知道通过VS工具自带的打包后会生成两个
文件
,一个是
exe
文件
,一个是msi
文件
。
需要说明的是msi
文件
时windowinstaller开发出来的程序
安装
文件
,它可以让你
安装
、修改、卸载你所
安装
的程序,也就是说VS工具打包生成的msi
文件
就是window installer的数据包,把所有和
安装
文件
相关的内容封装在一个包里。VS工具打包生成的
exe
文件
是主要是用于检查
安装
的环境,当
安装
的环
MSI
文件
是
Windows
Installer的数据包,它实际上是一个数据库,包含
安装
一种产品所需要的信息和在很多
安装
情形下
安装
(和卸载)程序所需的指令和数据。MSI
文件
将程序的组成
文件
与功能关联起来。此外,它还包含有关
安装
过程本身的信息:如
安装
序列、目标
文件
夹路径、系统依赖项、
安装
选项和控制
安装
过程的属性。
VS工具打包生成的
exe
文件
是主要是用于检查
安装
的环境,当
安装
的环境检查成功后 msi...