2

这个应用程序在我的机器上运行流畅,但是当试图在其他机器上运行时它根本不会出现。

搜索日志后我发现了这个

来源 = 应用程序错误

Faulting application name: Diamonds 2.1.exe, version: 2.1.1.23755, time stamp: 0x4e426777
Faulting module name: KERNELBASE.dll, version: 6.1.7600.16385, time stamp: 0x4a5bdfe0
Exception code: 0xe0434352
Fault offset: 0x000000000000aa7d
Faulting process id: 0x1ad0
Faulting application start time: 0x01cc574ef6707ed5
Faulting application path: C:\Users\Administrator.DEVELOPER\Desktop\EXE\Diamonds 2.1.exe
Faulting module path: C:\Windows\system32\KERNELBASE.dll
Report Id: 34498134-c342-11e0-8d91-6cf049ab4bd2

源 .NET 错误

Application: Diamonds 2.1.exe
Framework Version: v4.0.30319
Description: The process was terminated due to an unhandled exception.
Exception Info: System.TypeInitializationException
Stack:
   at Diamonds.Program.Main(System.String[])

该应用程序运行正常,除了将某些功能拆分到新的 dll 库之外,我没有进行任何新的修改。

有任何想法吗 ??

4

3 回答 3

2

我刚刚在我创建的 Windows 窗体应用程序中遇到了这个问题。显然有很多问题可能导致这种情况。在我的情况下,您可以打开任务管理器,单击应用程序,在任务管理器中看到它打开,然后立即关闭。查看问题所在的唯一方法是查看事件查看器并找到错误。

第一个是依赖项。如上所述,确保包含所有必需的 .dll 并且您已安装所需的框架。

第二个KERNELBASE.dll 可能会损坏。为确保不是这种情况,您可以运行系统文件检查器。可以在此处找到说明:http: //support.microsoft.com/kb/929833

第三,是我的情况。我在 Program.cs 的构造函数中运行了一个方法,这是您启动 Windows 窗体应用程序时首先实例化的。在创建任何异常处理之前,我的代码中有一个错误导致异常。为了解决这个问题,我在创建未处理的异常方法后将代码移到了一个点:

AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(CurrentDomain_UnhandledException);

在我的表单构造函数中。现在程序将启动并实际抛出错误。然后我只需要修复代码中的错误。

我希望这可以帮助您或其他任何人。

于 2013-02-22T14:36:39.027 回答
1

如果另一台机器没有 Microsoft .NET Framework 4,请安装http://www.microsoft.com/download/en/details.aspx?id=17718。如果它依赖于 c++ 程序集,您还应该查看 Visual C++ Redistributable http://www.microsoft.com/download/en/details.aspx?id=5555

于 2011-08-10T11:45:47.537 回答
0

如果客户端环境(.NET 版本、操作系统等)存在问题,您可以通过将应用程序更改为除了结束之外什么都不做,或者可能显示“你好,客户端”消息框来确认这一点。

于 2011-08-10T14:35:22.963 回答