所有WPF x86应用程序在启动时崩溃

时间:2019-05-22 20:21:45

标签: c# wpf

我们的一位客户有几台64位Windows 7计算机,这些计算机在运行WPF应用程序时遇到问题。不幸的是,框架崩溃的原因是我无法通过AppDomain.CurrentDomain.UnhandledException或通过Dispatcher.UnhandledException捕获错误并获得堆栈跟踪。我已经弄清楚了以下内容:

  • WinForms应用程序运行正常
  • 除非平台设置为x64,否则WPF应用程序将无法运行。
  • 有数十台未受影响的计算机运行同一操作系统

因此,基本上所有针对最新框架的x86 WPF应用程序在这些计算机上启动时都会立即失败。这对我们来说是个问题,因为我们通常只为少数仍使用32位计算机的客户构建x86版本。由于存在一些本机依赖性,因此目前对我们而言,“任何CPU”都不可行。

应用程序本身似乎无关紧要。一个只有一个按钮且没有任何额外依赖项的简单窗口在这些计算机上将无法正常运行:

<Window x:Class="WpfTestApp2.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" Height="450" Width="800">
    <Grid>
        <Button x:Name="btnOK" Content="OK" Width="75"
                HorizontalAlignment="Center" VerticalAlignment="Center"
                Click="btnOK_Click" />
    </Grid>
</Window>

这个简单的单窗口应用程序无法在任何CPU或x86平台上运行,但如果我以x64为目标,则可以使用。

应用程序事件日志提供以下信息,但没有使我找到解决方案:

Faulting module name: KERNELBASE.dll, version: 6.1.7601.24059, time stamp: 0x5aa1f588
Exception code: 0xc06d007e
Fault offset: 0x0000c54f
Faulting process id: 0x1bc4

到目前为止,我们已经尝试了以下所有方法:

  • 卸载并重新安装.NET Framework 4.7.2
  • 修复.NET Framework 4.7.2
  • 删除安全更新KB3126587和KB3126593(在引用异常代码/故障偏移量的帖子中提到)
  • 上述未处理的异常事件,永远不会触发

我正在寻找有关如何继续解决此问题的想法。

0 个答案:

没有答案