我创build了一个msi,以没有pipe理员权限的用户身份正常运行。 现在我创build了一个组策略,将这个msi应用于所有用户(用户configuration/软件安装)。 这个gpo工作正常,在login时msi被应用在工作站上。 现在我有一个terminal服务器2008 R2和msi不适用。 我试图手动安装msi,并得到the system administrator has set policies to prevent this installation 。 我可以通过将DisableMSI regkey设置为0来解决这个问题 现在在terminal服务器上手动安装。 但是自动安装不起作用。 我validation了组策略本身是通过gpresult应用的 我validation了来自此组策略的其他用户设置已应用。 我跑了rsop.msc 。 结果显示从这个政策的pipe理模板按预期,但不是软件安装。 我们的服务器2008域控制器和服务器20012成员服务器也是如此,所以这不是terminal服务器问题。 我想默认情况下,用户安装在服务器操作系统上被忽略,但是我还没有find任何设置。 有没有办法在Windows服务器上启用基于用户的gpo安装?
我试图通过GPO部署一个MSI广告是在Windows服务器2016年目标机器都是高于Vista的味道 为了确保工作正常,我理解所涉及的原则,我尝试安装一个简单的msi安装通过gpo与其相关联的.mst这似乎正在按预期通过分配/发布选项。 在MSI日志中的目标(win7 / 8/10)中,我看到“MSI(c)(48:18)[21:40:53:410]:DoAdvertiseScript正在返回:1603。 最终,我查看了服务器上相应的AAS脚本,发现相应的.aas文件是空的(0字节)。 我认为MSI根本不会推出。 当然,安装程序工作,否则。 进一步解决这个问题的好方法是什么?
我有一个VBScript文件,我打电话作为组策略计算机启动脚本的一部分。 VBScript运行一个batch file。 … Set WshShell = CreateObject("WScript.Shell") WshShell.run """\\server\folder\subfolder\install.bat""", 0, True … batch file调用访问存储在同一子文件夹中的安装程序的msiexec 。 msiexec /i "\\server\folder\subfolder\myinstaller.msi" /moreOptions 我了解GP启动脚本在计算机帐户的上下文中运行 。 我已经授予NTFS共享\\server\folder的域计算机组读取权限。 而且我已授予域计算机组subfolder读取和执行权限。 我似乎有某种权限的障碍。 VBScript运行良好。 但batch file与myinstaller.msi有问题。 当我使用msiexec详细日志logging我看到“MainEngineThread返回2”在日志中。 这表明MSI文件不能以某种方式访问batch file。 我也尝试用复制命令replacebatch file的内容。 xcopy "\\server\folder\subfolder\myinstaller.msi" "C:\myinstaller.msi" 这导致复制0个文件。 但是我很确定batch file能够读取msi。 我用一个校验和命令replace内容,读取相同的msi文件,并返回正确的散列。 我错过了什么? 为什么msiexec和xcopy无法访问msi文件? (防病毒程序不会在日志中显示任何被阻止的内容。)
伙计们,姑娘们,我是一个开发者,所以在系统方面原谅我的天真,我是为了那些在这些问题上比我更了解我的上师。 我正在努力成为一名企业公民,而不是以pipe理员身份在Win2k3服务器上运行我的服务。 不幸的是,有一个“configurationpipe理器”需要通过MSI不时升级整个应用程序。 我一直拼命地试图findMSDN上的信息,但他们都超链接到一个不是答案的东西,所以我已经读了,你可以“祝福”MSI以pipe理员身份运行。 如果应用程序需要来自IT部门的祝福,但是该应用程序必须能够自动调用MSI(即,回滚失败的升级),这种情况是可以的。 我正在拼命地努力避免降低环境的安全性,并尽可能地以最低的标准来运行。 AFAIK没有短信可用,但我有一个完整的域设置,可以更改设置等 更新:安装必须安装一个Windows服务,所以它必须以pipe理权限运行。
我一直坚信使用Windows安装文件(MSI)来安装我的新Windows窗体应用程序后,我问了一个问题,并得到了一些优秀的答案(谢谢大家) :.Net应用程序部署 现在我有一个不同的问题: 我的应用程序将需要访问SQL Server为用户提供数据,这意味着连接string必须存储在客户端的app.config文件中。 我应该如何处理? 在安装过程中,用户input到该数据库的连接string? 他们如何获得连接string? 在从pipe理员的电子邮件? 如果pipe理员想要使用SQL身份validation,并且需要将用户信息放在连接string中呢? 所以你知道,应用程序将通过互联网出售,所以我没有任何访问pipe理员或networking。 有什么build议么? 先谢谢了。
我们最近购买了EMCO远程安装程序来部署我们正在创build的MSI软件包。 我们仍然(不幸)在NT4域名,当我尝试使用域的pipe理员凭证部署一个包时,我得到“访问被拒绝”。 根据EMCO网站( http://www.emco.is/products/remote-installer/requirements.php )中的“远程计算机的要求”部分,它指出它需要远程机器具有: * Started services: Computer Browser, Remote Registry * File and Printer sharing enabled * Windows Installer 3.1 * TCP ports opened: 135, 139, 445 * UDP ports opened: 137, 138 有没有什么方法来编写这些改变的脚本? 如果是这样,有人能让我开始? 我有大约200台机器需要这个工作。 感谢你的帮助!!
我被要求在login时通过networking将software.msi安装到一组用户。 我的问题是,他们也需要pipe理员权限来安装这个软件。 我曾尝试使用runas命令,但要求用户input密码。 我也尝试使用MSIEXEC,但仍然声明用户没有足够的私有。 在networking或本地提供用户pipe理权限也是没有select的。 请帮助! 安迪。
我最近安装了Microsoft Windows SDK for Windows 7和.NET Framework 3.5 SP1,以在虚拟机(Windows 2003 R2标准版)上创build我的构build服务器,我想知道是否可以很好地为正在提取的文件指定临时文件夹MSI在安装过程中使用。 这应该适用于任何MSI。 我有更多的虚拟硬盘连接到这个虚拟机,将MSI的临时文件夹指向这些虚拟硬盘之一将是相当高效的,因为我可以稍后删除/丢弃这个虚拟硬盘。 压缩C盘VHD是一个痛苦,并不总是正确回收空间。 我试图改变%temp%和tmp环境variables没有效果? 或者是否有这种types的问题的具体/替代解决scheme? 参考文献: TempFolder属性 ? Windows Installer Wiki
我有几个testing环境(超V),其中包含各种Windows服务器。 每台机器都需要定期回滚到指定的快照,然后重新安装最新版本的软件进行testing。 软件安装是相当复杂的MSI与公平的几个选项屏幕。 我知道安装可以从命令行驱动,传入参数来覆盖向导选项。 在最简单的层面上,我想我可以编写一个batch file来启动每个安装所需的参数,但传入的值需要不时地更改(环境和环境),所以configuration工具文件和简单的GUI似乎是一个更好的主意。 我认为是什么让多一点的痛苦是多环境。 例如,一个环境可能包含4个服务器,并且需要一个包含所有服务器名称,服务端点等的configuration文件。另一个环境可能是单箱安装,所有名称和端点都设置为localhost。 所以,理想情况下,我希望能够存储不同的设置configuration,并使用它们运行所有需要的安装程序,并针对相关机器执行相关设置。 在我写出这个东西之前,有没有人知道一个现成的,简单的,免费的工具,可以让我做到这一点?
我有用于TFS控件的msi。 当我发布新版本的控件时,我想要远程卸载旧版本,并为部门中的所有计算机安装新版本。 我该怎么做? 它将需要什么(所有用户将不得不注销并login?) 谢谢,