Visual Studio安装程序在AspNetDiagnosticPack.msi

时间:2018-04-23 14:26:26

标签: visual-studio-2017 windows-installer installer

我遇到了here所描述的问题。 任何安装 AspNetDiagnosticPack.msi 的尝试 C:\ProgramData\Microsoft\VisualStudio\Packages\Microsoft.VisualStudio.AspNetDiagnosticPack.Msi,version=15.0.40314.0\AspNetDiagnosticPack.msi失败并显示错误状态:1603。 我现在无法使用VS安装程序添加或删除任何组件。

我安装了VS 2017 Professional,如下所示:

Microsoft Visual Studio Professional 2017 
Version 15.6.6
VisualStudio.15.Release/15.6.6+27428.2037
Microsoft .NET Framework
Version 4.7.02558

Installed Version: Professional

Visual C++ 2017   00370-20001-54960-AA753
Microsoft Visual C++ 2017

Visual F# Tools 10.1 for F# 4.1   00370-20001-54960-AA753
Microsoft Visual F# Tools 10.1 for F# 4.1

Application Insights Tools for Visual Studio Package   8.11.10402.2
Application Insights Tools for Visual Studio

ASP.NET and Web Tools 2017   15.0.40314.0
ASP.NET and Web Tools 2017

Azure App Service Tools v3.0.0   15.0.40215.0
Azure App Service Tools v3.0.0

C# Tools   2.7.0-beta3-62715-05. Commit Hash: db02128e6e3c4bdfc93e6ec425ac9162b4d4fe80
C# components used in the IDE. Depending on your project type and settings, a different version of the compiler may be used.

Common Azure Tools   1.10
Provides common services for use by Azure Mobile Services and Microsoft Azure Tools.

Cookiecutter   15.6.18072.2
Provides tools for finding, instantiating and customizing templates in cookiecutter format.

Dotfuscator Community Edition   5.32.1.6167-6ce295ebd
PreEmptive Protection - Dotfuscator CE

JavaScript Language Service   2.0
JavaScript Language Service

JavaScript Project System   2.0
JavaScript Project System

Microsoft Azure Tools   2.9
Microsoft Azure Tools for Microsoft Visual Studio 2017 - v2.9.51212.2

Microsoft JVM Debugger   1.0
Provides support for connecting the Visual Studio debugger to JDWP compatible Java Virtual Machines

Microsoft MI-Based Debugger   1.0
Provides support for connecting Visual Studio to MI compatible debuggers

Microsoft Visual C++ Wizards   1.0
Microsoft Visual C++ Wizards

Microsoft Visual Studio VC Package   1.0
Microsoft Visual Studio VC Package

Node.js Tools   1.4.11027.3
Adds support for developing and debugging Node.js apps in Visual Studio

NuGet Package Manager   4.6.0
NuGet Package Manager in Visual Studio. For more information about NuGet, visit http://docs.nuget.org/.

ProjectServicesPackage Extension   1.0
ProjectServicesPackage Visual Studio Extension Detailed Info

Python   15.6.18072.2
Provides IntelliSense, projects, templates, debugging, interactive windows, and other support for Python developers.

Python - Django support   15.6.18072.2
Provides templates and integration for the Django web framework.

Python - IronPython support   15.6.18072.2
Provides templates and integration for IronPython-based projects.

Python - Profiling support   15.6.18072.2
Profiling support for Python projects.

SQL Server Data Tools   15.1.61801.210
Microsoft SQL Server Data Tools

TypeScript Tools   15.6.20202.3
TypeScript Tools for Microsoft Visual Studio

Visual Basic Tools   2.7.0-beta3-62715-05. Commit Hash: db02128e6e3c4bdfc93e6ec425ac9162b4d4fe80
Visual Basic components used in the IDE. Depending on your project type and settings, a different version of the compiler may be used.

Visual Studio Code Debug Adapter Host Package   1.0
Interop layer for hosting Visual Studio Code debug adapters in Visual Studio

我认为这个问题起源于以前的VS版本中有一些遗骸。我无法卸载ASP.NET and Web Tools 2013.1。我终于通过重新安装VS 2015并使用the FixIt tool from this answer.删除了它。但仍然AspNetDiagnosticPack.msi以同样的方式失败。

我还试图完全卸载Web开发角色,因为我可能不会很快使用它,但安装总是失败。有没有办法让VS安装程序再次运行?

msi log is here

Action 15:50:02: WebConfigInitialize.
Action start 15:50:02: WebConfigInitialize.
MSI (s) (B8:F4) [15:50:02:244]: Invoking remote custom action. DLL: C:\Windows\Installer\MSIFF27.tmp, Entrypoint: Initialize
MSI (s) (B8:40) [15:50:02:244]: Generating random cookie.
MSI (s) (B8:40) [15:50:02:244]: Created Custom Action Server with PID 10588 (0x295C).
MSI (s) (B8:14) [15:50:02:306]: Running as a service.
MSI (s) (B8:14) [15:50:02:306]: Hello, I'm your 32bit Impersonated custom action server.
SFXCA: Failed to create new CA process via RUNDLL32. Error code: 2
CustomAction WebConfigInitialize returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox)
Action ended 15:50:02: WebConfigInitialize. Return value 3.

但问题出在自定义操作WebConfigInitialize中,日志没有大的帮助。我发现在运行卸载程序工具时有一个条目Microsoft ASP.NET and Web Tools 2015.1 - Visual Studio 2015 - 此条目无法卸载。也许我的问题的根源是我曾经使用Visual Studio 2015安装了一些ASP.NET的beta版本。我现在不需要ASP.NET,但是VS 2017安装程序仍然存在错误。

我在计算机上的缓存包中找到WebToolsExtensionsVS14_rc2_48.msi,卸载此软件包的方式与使用1603的2017年当前软件包的方式相同。

Action 8:30:41: WebConfigInitialize. 
Action start 8:30:42: WebConfigInitialize.
MSI (s) (48:BC) [08:30:42:012]: Creating MSIHANDLE (550) of type 790542 for thread 1980
MSI (s) (48:F0) [08:30:42:012]: Invoking remote custom action. DLL: C:\Windows\Installer\MSIA2E1.tmp, Entrypoint: Initialize
MSI (s) (48!A0) [08:30:42:028]: Creating MSIHANDLE (551) of type 790531 for thread 928
SFXCA: Failed to create new CA process via RUNDLL32. Error code: 2
MSI (s) (48!A0) [08:30:42:028]: Closing MSIHANDLE (551) of type 790531 for thread 928
CustomAction WebConfigInitialize returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox)
MSI (s) (48:F0) [08:30:42:028]: Closing MSIHANDLE (550) of type 790542 for thread 1980
Action ended 8:30:42: WebConfigInitialize. Return value 3.

类似的问题here,一个以重新安装他的机器而结束。

或者是否有一些工具可以显示特定MSI包的依赖关系?

The Developer's community link that is current and relevant to the problem is here

它说:

  

我们已在即将发布的版本中解决了该问题。我们已经解决了这个问题   ASP.NET诊断包中的托管自定义操作,用于修改   root web.config文件使用本机代码操作。这应该避免   以前在尝试启动托管时报告的CLR错误   安装过程中的代码DLL。

     

现在,我们在最新的Visual Studio Preview版本中解决了这个问题。   如果您想尝试修复,可以访问预览版本   在这里:https://www.visualstudio.com/vs/preview

看起来没有解决方法,除非等待微软修复那个失败的自定义操作。我最初忽略了这个建议,因为我没有正确检查评论的日期,但它们只有一个月的时间。 但是当我尝试安装预览时,它结束了with exactly the same error

在15.7.1版本中再次出现相同的错误。

1 个答案:

答案 0 :(得分:0)

更新:问题可能是a managed code custom action failing in the MSI in question(.NET代码无法运行 - 无论出于何种原因123)。

建议

我首先尝试 1)重新启动我建议在下面 - 清除空气并释放任何锁定 - 然后 2)禁用安全软件/防病毒 3)尝试安装并启用日志记录,如下所述。

核心部署问题

随着部署的进行,问题往往集中在: 1) 某些内容已锁定(正在使用中 - 由其他进程或其他用户登录),< strong> 2) 阻止(访问/权限被拒), 3) 依赖项缺失对于您的自定义操作或整个安装程序(运行时要求不满足 - 例如缺少.NET运行时版本), 4) 某些内容已损坏(数据文件,操作系统)设置,恶意软件通常是这里的罪魁祸首 - 或者是不明智的修补程序, 5) 意外系统状态,例如<强>磁盘已满,或者日期和时间错误,或者许可问题或其他一些奇怪的东西......等等...... / p>

这是一个非常简化的原因列表 - 显然还有很多其他问题,例如 6) 本地化错误:硬编码路径,错误解析日期和时间,路径名中的无效字符等... 7) 文件和路径名称太长 8) < / strong>和Microsoft专业:产品之间的奇怪和意外的不兼容性没有被认为有正当理由相互冲突(不同版本的Visual Studio等等)......等等... ,但这对你的问题来说太过分了。不过,从某个时间开始这里是a generic "deployment problems" summary - 仅供参考。

程序

  1. 重新启动 :我要做的第一件事是重新启动,然后尝试以常规方式调用安装。这只是为了排除这个简单的解决方案&#34; (有时有效)。可能存在正在使用的文件,安装程序必须替换才能完成。

  2. 日志记录 :为了最大化可用的调试信息,您可以使用详细的日志记录和调试信息记录安装(如果您有权访问MSI本身) )。

    • 打开提升的命令提示符(右键单击并以管理员身份运行)
    • 更改当前目录(cd),直至到达:C:\ProgramData\Microsoft\VisualStudio\Packages\Microsoft.VisualStudio.AspNetDiagnosticPack.Msi,version=15.0.40314.0\
    • MSI日志 :运行此命令(根据需要调整路径 - 尤其是日志文件):msiexec.exe /i AspNetDiagnosticPack.msi /L*vx C:\Test.log
    • 事件日志 :您还可以查看事件日志。我不会在这里重复这个程序,而是link to a similar, recent answer
  3. 不同的用户 :这是不寻常的建议(我还没有尝试过),但有时您可以通过创建计算机上的新本地管理员用户,然后从那里运行安装程序。它与用户配置文件中的错误有关。不是第一个尝试,而是将其添加为选项。