当我的安装程序安装在未安装 IIS 的计算机上时,它会失败。将要安装的功能不需要 IIS。该错误显示“无法连接到 Internet 信息服务器”。
除此之外。安装程序文件还有一个需要 IIS 的功能。但当我取消选择该功能时,安装程序仍然会查找 IIS。下面是它生成的日志。
MSI(s)(D0:F8)[11:39:12:437]:注意:1:2318 2:C:\ Program Files \ Cormant Technologies \ DCE \ WindowsService \ UninflectedWords.txt
MSI(s)(D0:F8)[11:39:12:437]:执行操作:CacheSizeFlush(,)
MSI(s)(D0:F8)[11:39:12:437]:执行操作:InstallProtectedFiles(AllowUI = 1)
MSI(s)(D0:F8)[11:39:12:437]:执行操作:ActionStart(名称= StartMetabaseTransaction,描述=启动IIS元数据库事务,)
操作 11:39:12:启动元数据库事务。启动 IIS 元数据库事务
MSI (s) (D0:F8) [11:39:12:453]:执行操作:CustomActionSchedule(Action=StartMetabaseTransaction,ActionType=11265,Source=BinaryData,Target=** *,CustomActionData=***)
MSI (s) (D0:D4) [11:39:12:453]:调用远程自定义操作。 DLL:C:\ WINDOWS \ Installer \ MSI1D.tmp,入口点:StartMetabaseTransaction
StartMetabaseTransaction:错误 0x80040154:无法获取 IID_IIMSAdminBase 对象
错误 26001。无法连接到 Internet Information Server。 (-2147221164)
MSI (s) (D0!78) [11:39:13:812]:产品:DCE - 错误 26001。无法连接到 Internet Information Server。 (-2147221164)
操作于 11:39:13 结束:InstallFinalize。返回值3。
MSI (s) (D0:F8) [11:39:13:828]:用户策略值“DisableRollback”为 0
MSI (s) (D0:F8) [11:39:13:828]:计算机策略值“DisableRollback”为 0
MSI(s)(D0:F8)[11:39:13:828]:执行操作:标头(签名= 1397708873,版本= 301,时间戳= 1029397732,LangId = 1033,平台= 0,ScriptType = 2,ScriptMajorVersion = 21、ScriptMinorVersion=4、ScriptAttributes=0)
MSI(s)(D0:F8)[11:39:13:828]:执行操作:DialogInfo(类型= 0,参数= 1033)
MSI(s)(D0:F8)[11:39:13:828]:执行操作:DialogInfo(类型= 1,参数= DCE)
MSI (s) (D0:F8) [11:39:13:828]: 执行操作:RollbackInfo(,RollbackAction=Rollback,RollbackDescription=回滚操作:,RollbackTemplate=[1],CleanupAction=RollbackCleanup,CleanupDescription=删除备份文件,CleanupTemplate=文件:[1])
行动 11:39:13:回滚。回滚动作:
回滚:启动 IIS 元数据库事务
MSI(s)(D0:F8)[11:39:13:828]:执行操作:ActionStart(名称= StartMetabaseTransaction,描述=启动IIS元数据库事务,)
MSI(s)(D0:F8)[11:39:13:828]:执行操作:ProductInfo(ProductKey = {FC6DA479-9C97-4941-8AAE-3E0C9D6DAA56},ProductName = DCE,PackageName = DCEWebInstaller.msi,语言= 1033、版本=50462720、分配=0、ObsoleteArg=0、、、PackageCode={FBFBCC4D-BE93-4AEA-8B05-922409001DE5}、、、InstanceType=0、LUASetting=0、RemoteURTInstalls=0)
MSI (s) (D0:F8) [11:39:13:828]: SHELL32::SHGetFolderPath 返回:C:\Documents and Settings\Administrator\Application Data
回滚:复制新文件
My installer would fail when installed on a machine that has no IIS installed. The features that are going to be installed doesnt need IIS. The error says "Cannot connect to Internet Information Server".
In addition to that. The installer file has also a feature that requires IIS. But when I unselect that feature, the installer still looks for IIS. Below is the log it generated.
MSI (s) (D0:F8) [11:39:12:437]: Note: 1: 2318 2: C:\Program Files\Cormant Technologies\DCE\WindowsService\UninflectedWords.txt
MSI (s) (D0:F8) [11:39:12:437]: Executing op: CacheSizeFlush(,)
MSI (s) (D0:F8) [11:39:12:437]: Executing op: InstallProtectedFiles(AllowUI=1)
MSI (s) (D0:F8) [11:39:12:437]: Executing op: ActionStart(Name=StartMetabaseTransaction,Description=Starting IIS Metabase Transaction,)
Action 11:39:12: StartMetabaseTransaction. Starting IIS Metabase Transaction
MSI (s) (D0:F8) [11:39:12:453]: Executing op: CustomActionSchedule(Action=StartMetabaseTransaction,ActionType=11265,Source=BinaryData,Target=***,CustomActionData=***)
MSI (s) (D0:D4) [11:39:12:453]: Invoking remote custom action. DLL: C:\WINDOWS\Installer\MSI1D.tmp, Entrypoint: StartMetabaseTransaction
StartMetabaseTransaction: Error 0x80040154: failed to get IID_IIMSAdminBase object
Error 26001. Cannot connect to Internet Information Server. (-2147221164 )
MSI (s) (D0!78) [11:39:13:812]: Product: DCE -- Error 26001. Cannot connect to Internet Information Server. (-2147221164 )
Action ended 11:39:13: InstallFinalize. Return value 3.
MSI (s) (D0:F8) [11:39:13:828]: User policy value 'DisableRollback' is 0
MSI (s) (D0:F8) [11:39:13:828]: Machine policy value 'DisableRollback' is 0
MSI (s) (D0:F8) [11:39:13:828]: Executing op: Header(Signature=1397708873,Version=301,Timestamp=1029397732,LangId=1033,Platform=0,ScriptType=2,ScriptMajorVersion=21,ScriptMinorVersion=4,ScriptAttributes=0)
MSI (s) (D0:F8) [11:39:13:828]: Executing op: DialogInfo(Type=0,Argument=1033)
MSI (s) (D0:F8) [11:39:13:828]: Executing op: DialogInfo(Type=1,Argument=DCE)
MSI (s) (D0:F8) [11:39:13:828]: Executing op: RollbackInfo(,RollbackAction=Rollback,RollbackDescription=Rolling back action:,RollbackTemplate=[1],CleanupAction=RollbackCleanup,CleanupDescription=Removing backup files,CleanupTemplate=File: [1])
Action 11:39:13: Rollback. Rolling back action:
Rollback: Starting IIS Metabase Transaction
MSI (s) (D0:F8) [11:39:13:828]: Executing op: ActionStart(Name=StartMetabaseTransaction,Description=Starting IIS Metabase Transaction,)
MSI (s) (D0:F8) [11:39:13:828]: Executing op: ProductInfo(ProductKey={FC6DA479-9C97-4941-8AAE-3E0C9D6DAA56},ProductName=DCE,PackageName=DCEWebInstaller.msi,Language=1033,Version=50462720,Assignment=0,ObsoleteArg=0,,,PackageCode={FBFBCC4D-BE93-4AEA-8B05-922409001DE5},,,InstanceType=0,LUASetting=0,RemoteURTInstalls=0)
MSI (s) (D0:F8) [11:39:13:828]: SHELL32::SHGetFolderPath returned: C:\Documents and Settings\Administrator\Application Data
Rollback: Copying new files
发布评论
评论(1)
如果您使用 Orca 仔细查看 InstallExecuteSequence 中的 ConfigureIIs 自定义操作,您将看到它的执行取决于名为 SKIPCONFIGUREIIS 的属性。这是“全有或全无”开关,如果您在 IIS 相关功能关闭时设置此属性,则安装不会尝试处理 IIS 服务。
希望这有帮助。
If you take a closer look at the ConfigureIIs custom action in the InstallExecuteSequence using Orca, you'll see its execution depends on the property called SKIPCONFIGUREIIS. It is "all-or-nothing" switch, and if you set this property for those cases when your IIS-related feature is off, the installation won't try to address IIS services.
Hope this helps.