仅当由SCCM部署时,口径静默安装才会失败

时间:2018-12-21 15:57:10

标签: sccm

我已经安装了Calibre Author Suite(Micro Focus是发行商),并且当我使用命令提示符在客户端上以系统管理员身份运行时,我的安装正常。我导航到ccmcache并使用以下命令行参数运行exe:

caliber-authorsuite-115-hf7.exe /V"/qn NOADMIN=YES ALLCLIENT=YES" /S

但是,当我尝试从SCCM安装时,出现0x653(1619)错误。在这一点上,我有点茫然。我在日志中看不到任何可以指向任何内容的内容,但老实说,我可能在查找错误的日志。如果安装可以在CMD中运行,则应在SCCM afaik中运行。

将部署设置为脚本安装程序,并将上面的代码行复制到“安装程序”字段中。 “安装开始于”字段为空白。有什么想法吗?

编辑:我添加了日志记录,这是尝试安装的结果:

=== Verbose logging started: 1/11/2019  10:21:23  Build type: SHIP UNICODE 5.00.7601.00  Calling process: C:\Windows\SysWOW64\MSIEXEC.EXE ===
MSI (c) (58:C4) [10:21:23:811]: Resetting cached policy values
MSI (c) (58:C4) [10:21:23:811]: Machine policy value 'Debug' is 0
MSI (c) (58:C4) [10:21:23:811]: ******* RunEngine:
       ******* Product: C:\Windows\system32\config\systemprofile\AppData\Local\Downloaded Installations\{B8AAF34B-B4DF-4C47-8BDA-C424E745859F}\Borland Caliber Author Suite.msi
       ******* Action: 
       ******* CommandLine: **********
MSI (c) (58:C4) [10:21:23:813]: Client-side and UI is none or basic: Running entire install on the server.
MSI (c) (58:C4) [10:21:23:813]: Grabbed execution mutex.
MSI (c) (58:C4) [10:21:23:872]: Cloaking enabled.
MSI (c) (58:C4) [10:21:23:872]: Attempting to enable all disabled privileges before calling Install on Server
MSI (c) (58:C4) [10:21:23:887]: Incrementing counter to disable shutdown. Counter after increment: 0
MSI (s) (4C:D0) [10:21:23:921]: Running installation inside multi-package transaction C:\Windows\system32\config\systemprofile\AppData\Local\Downloaded Installations\{B8AAF34B-B4DF-4C47-8BDA-C424E745859F}\Borland Caliber Author Suite.msi
MSI (s) (4C:D0) [10:21:23:921]: Grabbed execution mutex.
MSI (s) (4C:84) [10:21:23:962]: Resetting cached policy values
MSI (s) (4C:84) [10:21:23:963]: Machine policy value 'Debug' is 0
MSI (s) (4C:84) [10:21:23:963]: ******* RunEngine:
       ******* Product: C:\Windows\system32\config\systemprofile\AppData\Local\Downloaded Installations\{B8AAF34B-B4DF-4C47-8BDA-C424E745859F}\Borland Caliber Author Suite.msi
       ******* Action: 
       ******* CommandLine: **********
MSI (s) (4C:84) [10:21:23:964]: Note: 1: 2203 2: C:\Windows\system32\config\systemprofile\AppData\Local\Downloaded Installations\{B8AAF34B-B4DF-4C47-8BDA-C424E745859F}\Borland Caliber Author Suite.msi 3: -2147287037 
MSI (s) (4C:84) [10:21:23:992]: MainEngineThread is returning 3
MSI (s) (4C:D0) [10:21:23:995]: User policy value 'DisableRollback' is 0
MSI (s) (4C:D0) [10:21:23:996]: Machine policy value 'DisableRollback' is 0
MSI (s) (4C:D0) [10:21:23:996]: Incrementing counter to disable shutdown. Counter after increment: 0
MSI (s) (4C:D0) [10:21:24:000]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Rollback\Scripts 3: 2 
MSI (s) (4C:D0) [10:21:24:024]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\Rollback\Scripts 3: 2 
MSI (s) (4C:D0) [10:21:24:025]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\InProgress 3: 2 
MSI (s) (4C:D0) [10:21:24:025]: Note: 1: 1402 2: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Installer\InProgress 3: 2 
MSI (s) (4C:D0) [10:21:24:025]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied.  Counter after decrement: -1
MSI (s) (4C:D0) [10:21:24:025]: Restoring environment variables
MSI (c) (58:C4) [10:21:24:029]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied.  Counter after decrement: -1
MSI (c) (58:C4) [10:21:24:029]: MainEngineThread is returning 3
=== Verbose logging stopped: 1/11/2019  10:21:24 ===

从SCCM外部的提升的命令提示符运行时,安装仍然有效。

编辑2:我将程序设置为使用GUI安装,并通过SCCM /软件中心将其启动。我能够单击,然后解压缩文件并运行MSI失败,原因是“无法打开此安装包。请验证该包是否存在并且可以访问它,或者与应用程序供应商联系以验证该内容。是有效的Windows Installer软件包”。当然,这使我认为应该从供应商处重新下载安装程序并更新SCCM中的内容-但是,如果我从cmmcache目录中手动启动安装程序,则安装程序仍然可以正常工作,因此该程序包没有任何意义本身已损坏或以任何方式出现问题。

1 个答案:

答案 0 :(得分:1)

此安装程序exe将msi文件提取到用户的(本地)appdata中。 (您可以在日志中看到此行:C:\ Windows \ system32 \ config \ systemprofile \ AppData \ Local \ Downloaded Installations {B8AAF34B-B4DF-4C47-8BDA-C424E745859F} \ Borland Calibre Author Suite.msi)。

问题是系统帐户的appdata实际上位于system32内,而system32是一个哇重定向文件夹。

通常,在64位Windows安装中,有一个程序副本(程序文件是32位文件夹的64位程序文件(x86)和systme文件(此处,system32是64位,而syswow64是32bit文件夹)。 Wow64仿真负责检查运行的程序是否为32位,以及是否尝试访问它认为是32位的文件夹之一(在32位Windows系统上,并且32位程序文件也存在并且是32位版本,因此某些程序对此进行了硬编码)将该程序重定向到其他程序。

现在,由于systemprofile是system32的子文件夹(与其他所有配置文件都存储在C:\ users中且未进行哇重定向)不同,它也将被重定向。

这里似乎发生的是,您的可执行文件具有某种机制,可将其msi的内容提取到AppData中的“下载的安装”文件夹中,并且是64位可执行文件(因此其system32 \ config \ systemprofile)。但是,由于某种原因,它被配置为运行32Bit msiexec.exe(您可以在日志的第一行看到C:\ Windows \ SysWOW64 \ MSIEXEC.EXE的信息)。当此文件尝试访问该路径时,由exe给出,将system32路径转换为syswow64(尽管msiexec.exe仍认为它在system32中),并且找不到msi文件。如果您手动尝试,则永远不会发生这种情况,因为普通用户的%localappdata%文件夹未重定向,因此32位和64位应用程序会发现它完全相同。

尽管有一些抑制文件夹重定向的方法,但尚不清楚这在这里是否还能工作,因为如果msiexec.exe加载了例如来自system32的dll会被禁用,并且重定向可能会崩溃,因此,此处的最佳方法是仅提取msi文件(只需手动开始安装,并从下载的安装文件夹中进行下载),然后直接与msi文件一起部署。 (如果exe在msi之前安装了任何先决条件,则可能还需要安装它们)