簡體   English   中英

Visual Studio 2008停止顯示錯誤

[英]Visual Studio 2008 stopped displaying errors

經過幾個月的不活動之后,我決定再次使用Microsoft Visual Studio(C#)。

單擊“開始調試”后,出現Windows錯誤(我認為svchost.exe停止工作了),我不知道這與我要說的內容是否相關,但是當出現錯誤時,我沒有得到任何提示例如,我正在調用數組。

該程序只是不執行與錯誤相關的代碼(我已經注意到了陣列和文件I / O問題),但是繼續正常運行,這使我發瘋,因為在編寫每個代碼后我必須單擊“開始調試”代碼行只是為了確保我是正確的。

因此,“調試”>“異常”,在那兒很混亂,我之前從未碰過。 任何幫助,將不勝感激。

編輯:我已經重新啟動了3次計算機,並且剛剛進行了清理和重建(該項目),但沒有任何更改。

EDIT2:對不起,如果令人困惑,這是一些新信息:

public partial class frmMain : Form
{
    PictureBox[] pic = new PictureBox[120];
    public frmMain()
    {
        InitializeComponent();
    }
    private void frmMain_Load(object sender, EventArgs e)
        {
            // Creating pictureboxes
            for (int i = 1; i <= 199; i++) //199 instead of 120 or 119 and the rest of the for isn't executed plus no error or warning displayed.
            {
                pic[i] = new PictureBox();

EDIT3:下面是另一個示例。 如果我嘗試讀取沒有try-catch序列的不存在的文件,則整個pic []矩陣就像在程序運行時從內存中卸載一樣。

    pic[i].Image = Image.FromFile("H:\\My Pictures\\" + i + ".jpg");

EDIT4:謝謝您的時間。 我嘗試使用“發布”而不是“調試”,並且此問題已解決了一段時間。

當我決定在“ OutofRangeException”上按“ Continue”而不是“ Break”時,Windows彈出此消息:“ Windows必須在兼容模式下運行程序”。 現在,當我按“開始調試”時,就像以前一樣...

您在Windows / .Net / C#/ Wow64中遇到了一個已知的功能失誤,當Form.Load事件處理程序拋出異常時會發生這種情況。

在Windows 64位版本的WinForms應用程序中,VS2010不會顯示未處理的異常消息

漢斯·帕桑特的回答:

Windows wow64仿真層允許32位代碼在64位版本的Windows上運行,這是一個令人討厭的問題。 它吞下了觸發Load事件的代碼中的異常。 阻止調試器看到它​​並介入。這顯然很難修復,Microsoft的Windows和DevDiv組正在來回指責。 DevDiv對此無能為力,Windows認為這是正確的行為,聽起來很神秘。 連接調試器只是一個問題,您的代碼將像往常一樣炸毀而沒有一個。

聽起來您可能正在處理此問題:

有什么東西吞沒了未處理的異常?

基本上,在64位計算機上構建時,有時會吞下異常。

我相信這里可能有一個修復程序,如下所示:

https://connect.microsoft.com/VisualStudio/feedback/details/357311/silent-exceptions-on-x64-development-machines

這是修復程序: http : //support.microsoft.com/kb/976038

否則,請嘗試將目標內部版本設置為x86,而不是x64或“任何CPU”。 另外,請嘗試以發布模式運行,看看是否發生異常。

如果這不是問題,則可能需要重新安裝Visual Studio。 如果您使用的是Visual Studio Express,為什么不升級到比2008更新的版本?

編輯:

另外,也嘗試將所有Service Pack和修補程序也應用到OS。 如果您使用的是Windows 7,則應確保使用SP1。 您還應該確保使用的是Visual Studio 2008 SP1和所有修補程序。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM