C#WinForm什么都没发生

时间:2012-05-14 09:25:43

标签: c# winforms

我在我的Windows服务器2008上创建了C#WinForm,它运行正常。

但是当我将这个MyProg.exe转移到计算机窗口7中时,我运行它,没有任何反应。

我的代码:

[STAThread]
        static void Main()
        {

            try
            {
                Application.SetCompatibleTextRenderingDefault(false);
                DevExpress.UserSkins.BonusSkins.Register();
                Application.EnableVisualStyles();

                //Pour TEST
                //Le_ClientID = "850001";
                //Le_Login = "850001FA";

                using (var loginForm = new Login())
                {
                    if (loginForm.ShowDialog() != System.Windows.Forms.DialogResult.OK)
                        return;
                }

                Application.Run(new Le_MainForm());
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

有人有想法吗?

事件日志显示: - 系统

  • 提供商

    [名称]应用程序错误

  • EventID 1000

    [Qualifiers] 0

    等级2

    任务100

    关键字0x80000000000000

  • TimeCreated

    [SystemTime] 2012-05-14T09:40:39.000000000Z

    EventRecordID 3557

    频道申请

    计算机anjouachemineme

    安全性

    • EventData

    FrontEnd_Offline.exe 1.0.0.0 4fb0c28b KERNELBASE.dll 6.1.7601.17651 4e2111c0 e0434352 0000d36f F84 01cd31b59ee78b7d C:\ Soft8_Local \ FrontEnd_Offline.exe C:\ WINDOWS \ SYSTEM32 \ KERNELBASE.dll dcb7cb01-9da8-11e1-bf8c-1c6f65c1ad74

提前谢谢你, 甜菊

PS:当我在MyProg.exe中吃午餐时,它在任务管理器上列出,但在大约3秒后消失(杀死)。

2 个答案:

答案 0 :(得分:0)

执行exe(以管理员身份启动)

如果您没有安装Framework,而默认情况下Windows 7附带2.0和3.5 Framework,则可能会发生这种情况。如果您在visual studio 2010中创建了应用程序,那么您需要从Microsoft网站下载FrameWork 4.0以在Windows 7中运行该exe文件

you can download Framework 4.0 from here

答案 1 :(得分:0)

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

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

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

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

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

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

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