2010-10-22 91 views
2

我試圖調試一個ASP.NET 3.5應用程序,我最近從VS 2005遷移過來的。(這使用了Crystal Reports 11 Release 2,但我不知道是否會導致我遇到問題,或者不)。該應用程序使用Active Directory進行身份驗證。我將在VS 2008中打開應用程序,然後按F5鍵開始調試。不久之後,VS 2010的Just-In-Time調試器彈出並詢問我是否想(a)調試(b)取消調試的w3wp.exe。爲什麼當我試圖調試VS 2008應用程序時,VS 2010調試器會彈出?

咦?爲什麼VS 2010會出現?我沒有運行。我不在。我在VS 2010中沒有按F5。我在VS 2008中,然後按下運行/調試。這是怎麼回事;爲什麼VS 2010會干擾?

回答

5

編輯:對不起,我不得不編輯我的答案。當涉及兩個版本的VS時,結果會變得更復雜一點。希望這個編輯更準確。

如果您轉到工具>選項>調試> Just-in Time,您可以啓用/禁用特定版本的VS的JIT調試。如果您啓用多個VS作爲JIT調試器,則可以在VS Jit調試器啓動時選擇它們或將其中一個設置爲默認值。我假設VS2010在安裝過程中替換了VS2008 JIT調試器,因此要重新啓用它,您需要啓動VS2008並轉到菜單並啓用它。我必須禁用,然後啓用它才能使其正常工作。

如果您已經設置了其他調試器,例如WinDbg作爲您的JIT調試器,這是將以下注冊表鍵HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger更改爲指向所需的調試器的問題。請注意,如果您運行的是64位Windows,那麼在Wow64部分也有一個影子條目。 This guide有其他詳細信息。

+0

謝謝Brian。我找到了註冊表項指向的vsjitdebugger.exe文件。這是VS 2010.很酷,但VS 2008調試器的名稱是什麼? – Rod 2010-10-22 17:11:44

+0

@Rod:請看我修改後的答案。我以前的回答並沒有涵蓋所有選項。對於那個很抱歉。 – 2010-10-22 17:44:33