我正在研究使用组策略来部署几个应用程序。我希望将每个安装的日志写入文件服务器上的共享文件夹以进行跟踪。
如果我传递了适当的参数,我可以创建日志。例如:msiexec /i Package.msi /l*vx c:\Package.log
但是,使用组策略进行部署时,无法将任何参数传递给安装文件。
无论如何在创建msi包的过程中指定日志文件位置吗?
答案 0 :(得分:1)
我昨天刚刚在MS Security Essentials上看到了msi,属性:MsiLogFileLocation
使用Orca创建转换并在将msi添加到组策略对象时选择“高级”来应用它。
转换可能还需要MsiLogging属性,但我没有看到msse.msi。我没有用其他任何东西测试它。似乎需要Windows Installer 4.5。
MsiLogging属性: msdn.microsoft /en-us/library/aa370322%28VS.85%29.aspx
MsiLogFileLocation: msdn.microsoft /en-us/library/aa370321%28VS.85%29.aspx
奥卡: technipages /download-orca-msi-editor.html
(我无法发布超链接,因此请自行添加.com)
答案 1 :(得分:1)
在目标计算机上创建此注册表项:
HKEY_LOCAL_MACHINE \ SOFTWARE \政策\微软\的Windows \ Installer程序
Reg_SZ:记录
价值:voicewarmupx
这将为系统上运行的每个MSI创建一个日志文件。生成的日志名为MSI ###。log(其中“###”是唯一的随机标识符),并放在系统的Temp目录中。
要查看日志,请单击“开始/运行”,键入“%TEMP%”
值字段中的字母可以按任何顺序排列。每个字母都会打开不同的记录模式。对于MSI版本1.1,每个字母的功能如下:
v - Verbose output
o - Out-of-disk-space messages
i - Status messages
c - Initial UI parameters
e - All error messages
w - Non-fatal warnings
a - Startup of actions
r - Action-specific records
m - Out-of-memory or fatal exit information
u - User requests
p - Terminal properties
+ - Append to existing file
! - Flush each line to the log
"*" - Wildcard, log all information except for the v option. To include the v option, specify "/l*v".
此时,您可以从%TEMP%获取日志文件并将其复制到您的共享。
还要考虑:
通过修改组策略启用Windows Installer日志记录
您可以使用组策略启用 通过修改适当的日志记录 组织单位(OU)或活动 目录组策略:单击“开始”, 然后单击“运行”。在打开框中, 键入gpedit.msc以启动组 政策编辑。展开计算机 配置,展开管理 模板,展开Windows组件, 然后单击Windows Installer。 双击“日志记录”,然后单击“确定” 启用。在“日志记录”框中,指定 您要记录的选项。 日志文件Msi.log出现在 系统卷的Temp文件夹。