有没有办法处理 MSI 安装向导中的捕获异常?

发布于 2024-08-23 03:45:19 字数 117 浏览 1 评论 0原文

我面临一些奇怪的情况,当我在功能自定义向导中选择/取消选择功能时,有时会导致窗口崩溃。它根本没有给出任何线索。它也不是始终如一地发生。

您有任何想法或遇到过此类问题吗?我什至可以使用安装日志追踪根本原因。

I am facing some odd situation that when I select/deselect the features in the feature customization wizard, it sometimes crashes the window. It does not give any clue at all. It also not happens consistently.

Do you have any idea or faced such kind of issue? I am able to even trace the root cause using install log.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

眼眸印温柔 2024-08-30 03:45:19

如果打开“调试”策略,您可能能够更接近地隔离问题。为此,请按照以下说明将 HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\InstallerDebug 值设置为 (dword) 7 Windows Installer 团队博客。然后,您需要使用 DebugView 等工具来查看额外的内容Windows Installer 将生成的输出。请注意,您可能需要重新启动“msiserver”服务才能使策略生效。祝你好运,理解它所显示的内容;通常只是大量 SQL 查询转储。

You may be able to get closer to isolating the problem if you turn on the Debug policy. Do this by setting HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer's Debug value to (dword) 7 in as described on the Windows Installer team blog. You will then need to use a tool like DebugView to view the extra output that Windows Installer will generate. Note you may have to restart the "msiserver" service for the policy to take effect. Best luck making sense of what it shows; often it's just a lot of SQL query dumps.

潇烟暮雨 2024-08-30 03:45:19

有时您可以从事件日志中获取 MSI 异常,但它们并不总是能告诉您太多信息。

相反,您可以打开 MSI 日志记录,这可以通过注册表或命令行来完成。要了解有关注册表选项的信息,请访问这篇 MS 支持文章。要从命令行执行此操作,您可以使用相同的开关,但它们显然只能持续一次安装。这是从 msiexec 收集的快照:

Logging Options
    /l[i|w|e|a|r|u|c|m|o|p|v|x|+|!|*] <LogFile>


    i - Status messages

    w - Nonfatal warnings

    e - All error messages

    a - Start up of actions


    r - Action-specific records

    u - User requests

    c - Initial UI parameters

    m - Out-of-memory or fatal exit information

    o - Out-of-disk-space messages

    p - Terminal properties

    v - Verbose output

    x - Extra debugging information

    + - Append to existing log file

    ! - Flush each line to the log

    * - Log all information, except for v and x options

    /log <LogFile>

            Equivalent of /l* <LogFile>

要利用这些选项,请直接使用 msiexec:

msiexec.exe [path to your msi] /l [your options]

You can sometimes grab MSI exceptions from out of the event log, but they won't always tell you much.

Instead what you can do is turn on logging of the MSI, this can be done either via the registry, or via the command line. To find out about the registry option, visit this MS Support article. To do it from the command line you can use the same switches, but they obviously will only last for that one install. This is a snapshot as gathered from msiexec:

Logging Options
    /l[i|w|e|a|r|u|c|m|o|p|v|x|+|!|*] <LogFile>


    i - Status messages

    w - Nonfatal warnings

    e - All error messages

    a - Start up of actions


    r - Action-specific records

    u - User requests

    c - Initial UI parameters

    m - Out-of-memory or fatal exit information

    o - Out-of-disk-space messages

    p - Terminal properties

    v - Verbose output

    x - Extra debugging information

    + - Append to existing log file

    ! - Flush each line to the log

    * - Log all information, except for v and x options

    /log <LogFile>

            Equivalent of /l* <LogFile>

To take advantage of these options, use msiexec directly:

msiexec.exe [path to your msi] /l [your options]
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文