TypeInitializationException WinForms at startup

本文关键字:startup at WinForms TypeInitializationException | 更新日期: 2023-09-27 18:32:04

我在启动应用程序的那一刻收到了标题中提到的异常。它工作得很好,我添加了system.media库播放了一些声音,我尝试播放感叹号,这是它第一次崩溃的时候。我用 Ctrl + z 删除了所有新添加的库和代码,但现在它甚至无法运行这就是我得到的:

http://prntscr.com/9v8qjo这是我演奏的声音System.Media.SystemSounds.Exclamation.Play();

    private async void Form1_Load(object sender, EventArgs e)
    {
        await Shuffle();
        UpdateStatistics(folds, playedHands, lostHands, wonHands);
    }
    public MainPoker()
    {
        turns.Add(PFturn);
        turns.Add(B1Fturn);
        turns.Add(B2Fturn);
        turns.Add(B3Fturn);
        turns.Add(B4Fturn);
        turns.Add(B5Fturn);
        KeyPress +=
            Form1_KeyPress;
        _settings.Height = 140;
        _settings.Width = 90;
        call = bb;
        MaximizeBox = false;
        MinimizeBox = false;
        Updates.Start();
        InitializeComponent();
        PickNextBlind();
        Timer.Interval = (1000);
        Timer.Tick += timer_Tick;
        Updates.Interval = (100);
        Updates.Tick += Update_Tick;
        tbRaise.Text = (bb * 2).ToString();
    }

TypeInitializationException WinForms at startup

转到异常设置并为TypeInitializationException添加复选标记。

再次运行调试器 - 通过执行此操作,它应该在发生异常时停止。在那里你可能会发现你的问题。

我认为您正在访问MainPoker类中的任何文件,因为消息显示The path is not of a legal form.只是一个猜测...

我修复了它。问题出在我的资源上。我那里有一个字符串,它为我的程序中的静态字符串提供了值,某些东西破坏了资源中的字符串,导致我的静态字符串位置无效。我刚刚创建了一个新的表单,将其作为启动项目运行,并从那里修复了我的资源中的字符串。