Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/wix/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Exception handling 有没有办法在MSI安装向导中处理捕获异常?_Exception Handling_Wix_Windows Installer - Fatal编程技术网

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

Exception handling 有没有办法在MSI安装向导中处理捕获异常?,exception-handling,wix,windows-installer,Exception Handling,Wix,Windows Installer,我面临一些奇怪的情况,当我在功能自定义向导中选择/取消选择功能时,它有时会使窗口崩溃。它根本没有给出任何线索。它也不是始终如一地发生 你有没有想过或面对这样的问题?我甚至可以使用安装日志跟踪根本原因。有时您可以从事件日志中获取MSI异常,但它们不会告诉您太多 相反,您可以通过注册表或命令行打开MSI的日志记录。要了解注册表选项,请访问。要从命令行执行此操作,您可以使用相同的开关,但它们显然只适用于一次安装。这是从msiexec收集的快照: Logging Options /l[i|w|e

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


你有没有想过或面对这样的问题?我甚至可以使用安装日志跟踪根本原因。

有时您可以从事件日志中获取MSI异常,但它们不会告诉您太多

相反,您可以通过注册表或命令行打开MSI的日志记录。要了解注册表选项,请访问。要从命令行执行此操作,您可以使用相同的开关,但它们显然只适用于一次安装。这是从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>

如果启用调试策略,则可以更接近隔离问题。如Windows Installer团队所述,将中的
HKEY\U LOCAL\U MACHINE\SOFTWARE\Policys\Microsoft\Windows\Installer
Debug
值设置为(dword)
7
。然后需要使用类似的工具来查看Windows Installer将生成的额外输出。注意:要使策略生效,您可能必须重新启动“msiserver”服务。祝你好运,了解它所展示的一切;通常只是大量SQL查询转储。

我提到的安装日志与您在上述命令行开关中建议的相同。我也无法从详细日志中找到。这可能与您的MSI文件太大有关,正如您在本问题中提到的:
msiexec.exe [path to your msi] /l [your options]