Windows installer 使用MSI编辑器配置Cisco Jabber(例如MS Orca)

Windows installer 使用MSI编辑器配置Cisco Jabber(例如MS Orca),windows-installer,xmpp,cisco,orca,Windows Installer,Xmpp,Cisco,Orca,我想配置Cisco Jabber并在Cisco Jabber中启用PickupGroup和HuntGroup的功能。为此,我必须在C:\ProgramFiles(x86)\Cisco Systems\Cisco jabber中修改一个xml文件(jabber config defaults.xml)。我必须粘贴这段代码 但是,应该不需要对xml文件进行后续的修改。为此,我必须使用msi编辑器z.b.ms orca或pantaray superorca并更改参数 Q:MSI编辑器中的哪个参数我

我想配置Cisco Jabber并在Cisco Jabber中启用PickupGroup和HuntGroup的功能。为此,我必须在C:\ProgramFiles(x86)\Cisco Systems\Cisco jabber中修改一个xml文件(jabber config defaults.xml)。我必须粘贴这段代码


但是,应该不需要对xml文件进行后续的修改。为此,我必须使用msi编辑器z.b.ms orca或pantaray superorca并更改参数


Q:MSI编辑器中的哪个参数我必须更改,以启用PickupGroup和HuntGroup,而不必在安装后调整xml文件?更新:检查是否有可供管理员使用的关于部署的文档-或给他们的支持部门打电话。在这些文档中经常会有关于如何最好地部署软件的建议或建议。可以简单地设置几个公共属性:

注意!不是实际参数,只是一个示例,请检查文档:

 msiexec.exe /i YourPackage.msi ENABLECALLPICKUP=1 ENABLEHUNTGROUP=1
下面的答案试图详细解释MSI安装的定制,以及更多内容:


完成任务:如果没有实际的MSI,总是很难说最好的方法是什么。在我看来,如果你正在做一个公司的软件包,其中一个更简单的方法就是为你的软件包制作一个管理员映像。从技术上讲,这不是最好的方法,但通常可以完成工作:

 msiexec.exe /a YourPackage.msi
然后以交互方式为设置选择提取文件夹。或者,如果没有GUI,请在提取命令中指定输出路径:

 msiexec.exe /a YourPackage.msi TARGETDIR=C:\MyExtractedFiles
如果MSI包装在EXE文件中,请尝试以下相当混乱的答案:

现在,您可以在提取的文件中找到有问题的XML,并且您可以“热修复”文件的内容——只要它确实存在于磁盘上。然后,通过SCCM或其他一些部署机制,从已创建的管理员映像在工作站上运行安装

生成的XML:摘录中也可能没有XML文件,但它是由自定义操作或第三方XML写入机制(例如,来自WiX、Installshield、Advanced Installer等)编写的。没有微星,我无法判断。然后,您需要更新MSI中的自定义表以设置有问题的设置,或者如果是供应商自行开发的自定义操作,则对使用您自己的自定义操作编写的文件进行后期处理。这可能需要相当长的时间。您可能可以使用WiX进行后期处理,但这并不是完全可以调整的


升级警告:当您对要安装的XML文件进行“热修复”时,您应该知道,在升级时覆盖它并不是那么容易。从技术上讲,最好将XML文件条目转换为WiX XML update语句(或其他部署工具中的等效语句),因为这样可以准确地“精确地”确定文件中的更改,而不必担心文件覆盖情况(这可能很难解决)。本质上:默认情况下,具有不同修改和更改日期的文件不会被Windows Installer覆盖(这是一个很长的故事,需要处理很多惊喜)

仅主要升级:如果使用主要升级升级升级应用程序,并且在安装新版本之前完全卸载旧版本(在
InstallExecuteSequence
中提前放置
删除现有产品
),然后,您通常不会看到使用新设置覆盖设置时出现任何问题,因为在卸载时,更改会被清除-删除-并且默认内容是新安装的(恢复,而不是覆盖)-这实际上是人们不希望出现这种行为时的常见问题。安装后,用户是否会以您希望保留的方式更改配置文件


有关管理安装的更多信息:


这个问题的问题是,它与开发无关,而是与配置Cisco的MSI文件有关。除此之外,Xml文件很可能位于MSI文件中嵌入的CAB文件中,而这不是MSI编辑器(如Orca)可以更改的内容。还要注意的是,如果Cisco对他们的MSI文件进行了证书签名,那么修改它将破坏证书签名检查-你基本上是在攻击另一家公司的签名MSI文件,这相当棘手。
 msiexec.exe /a YourPackage.msi TARGETDIR=C:\MyExtractedFiles