w3wp.exe - 應用程式錯誤 應用程式發生異常 unknown software exception 的解決方法

天府雲創發表於2017-04-17
w3wp.exe - 應用程式錯誤 應用程式發生異常
應用程式發生異常   未知的軟體異常   (0xc06d007e),位置為   0x7c815e02   
    
  環境是:Windows2003   +   sp1   +   ie6   +   Framework   2.0   +   vs   2005   
    
  在vs   裡面除錯沒有問題,釋出網站以後在iis上執行報錯,找不到原因,網上搜尋說可能是程式池裡的不同版本的framework衝突,後來把全部的net全改成2.0版,一樣報錯。 
解決辦法:

點選“開始”-“控制皮膚”-“管理工具”-“元件服務”-“計算機”-“我的電腦”-“DCOM”選項,     
  選擇其下的“IIS   ADMIN   SERVICE”,右健選擇“屬性”,找到“安全”,在“啟動和啟用許可權”中編輯“自定義”,新增帳號“IWAM_*****”,     
  給該帳號賦予“本地啟動”和“本地啟用”的許可權,重新啟動IIS,(點“開始”-“執行”-“CMD”,點確定,然後執行IISRESET),

上面這個方法解決有點問題,沒找到問題根源:請看下面:
按上述方法仍然無法解決問題,後來google搜尋如下辦法,不知道可行否,待查: 

我已經找到問題的 答案了,是刪除登錄檔裡的兩個鍵值就行了。 
在msdn中是這樣解釋的: 
關鍵詞“實時除錯” 

實時除錯是這樣一種功能,當在 Visual Studio 外執行的程式遇到致命錯誤時,它自動啟動 Visual Studio 偵錯程式。實時除錯使您能夠在應用程式被作業系統終止之前檢查錯誤。Visual Studio 偵錯程式不需要在發生錯誤時是執行的。 

如果在啟用了實時除錯的情況下發生了錯誤,將開啟一個對話方塊,詢問您是否要除錯程式,以及要使用哪個偵錯程式。 

如果作為另一個使用者執行的程式命中致命錯誤,則在偵錯程式啟動之前,將顯示一個安全警告對話方塊。有關更多資訊,請參見安全警告:附加到不受信任的程式可能會有危險。 

您可以從“選項”對話方塊啟用實時除錯。有關更多資訊,請參見如何:啟用/禁用實時除錯。 

對於 Windows 窗體,您還必須在 machine.config 或 application.exe.config 檔案中啟用實時除錯。有關更多資訊,請參見如何:為 Windows 窗體啟用實時除錯。 

在伺服器上安裝 Visual Studio 後,當發生一個未處理的異常時,預設行為會顯示一個需要使用者干預的“異常”對話方塊,使用者要麼啟動實時除錯,要麼忽略該異常。這對無人蔘與執行可能是不需要的。若要配置伺服器以在未處理的異常發生時不再顯示對話方塊(安裝 Visual Studio 之前的預設行為),請使用登錄檔編輯器刪除以下注冊表項: 

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows NT/CurrentVersion/AeDebug/Debugger 

HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/.NETFramework/DbgManagedDebugger 

在 64 位 作業系統上也刪除以下注冊表項: 

HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Microsoft/Windows NT/CurrentVersion/AeDebug/Debugger 

HKEY_LOCAL_MACHINE/SOFTWARE/Wow6432Node/Microsoft/.NETFramework/DbgManagedDebugger 

注意 
實時除錯將對在本機應用程式中承載的託管程式碼不起作用,例如視覺化工具。 

注意 
在 Windows Server 2003 或 Windows 2000 SP3(或更新版本)上安裝 .NET Framework 後,只有在計算機重新啟動後,實時除錯才可用於在終端服務會話中通過受限使用者帳戶執行的程式。
 
解決w3wp.exe記憶體佔用問題 w3wp.exe CPU佔用100%在IIS6下,經常出現w3wp.exe的記憶體及CPU佔用不能及時釋放,從而導致伺服器響應速度很慢。

解決記憶體佔用過多,可以做以下配置:
1、在IIS中對每個網站進行單獨的應用程式池配置。即互相之間不影響。
2、設定應用程式池的回收時間,預設為1720小時,可以根據情況修改。再設定當記憶體佔用超過多少(如500M),就自動回收記憶體。

解決CPU佔用過多:
1、在IIS中對每個網站進行單獨的應用程式池配置。即互相之間不影響。
2、設定應用程式池的CPU監視,不超過25%(伺服器為4CPU),每分鐘重新整理,超過限制時關閉。

根據w3wp取得是那個一個應用程式池:
1、在工作管理員中增加顯示pid欄位。就可以看到佔用記憶體或者cpu最高的程式pid
2、在命令提示符下執行iisapp -a。注意,第一次執行,會提示沒有js支援,點選確定。然後再次執行就可以了。這樣就可以看到pid對應的應用程式池。(iisapp實際上是存放在C:/windows/system32目錄下的一個VBS指令碼,全名為iisapp.vbs,如果你和我一樣,也禁止了Vbs預設關聯程式,那麼就需要手動到該目錄,先擇開啟方式,然後選“Microsoft (r) Windows Based Script Host”來執行,就可以得到PID與應用程式池的對應關係。)
3、到iis中察看該應用程式池對應的網站,就ok了,做出上面的記憶體或CPU方面的限制,或檢查程式有無死迴圈之類的問題。

執行程式是提示應用程式發生異常 unknown software exception(0xc0000096),位置為0x02fe6818,大家可以參考下面的方法測試下
在控制皮膚的新增/刪除程式中看看你是否安裝了微軟NET.Framework,如果已經安裝了,可以考慮解除安裝它,當然如果你以後在其它程式需要NET.Framework時候,可以再重新安裝。 

  另外,如果你用的是ATI顯示卡並且你用的是SP2的補丁(一些ATI的顯示卡驅動需要在NET.Framework正常工作的環境下)。這種情況你可以找一款不需要NET.Framework支援的ATI顯示卡驅動。 

  如果以上兩種方法並不能完全解決問題,你試著用一下“IE修復”軟體,並可以查查是否有病毒之類的。 

  〔微軟NET.Framework升級到1.1版應該沒問題了〕 

  〔還有一說〕 

  方法一: 

  微軟新聞組的朋友指點:開始--執行:regsvr32 jscript.dll 

  開始--執行:regsvr32 vbscript.dll 

  不過沒解決---但提供了路子-----一次執行註冊所有dll 

  搜尋查詢到方法如下: 

  執行 輸入cmd 回車在命令提示符下輸入 

  for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1 

  這個命令老兄你慢慢輸 輸入正確的話會看到飛快地滾屏 否則……否則失敗就是沒這效果。回車後慢慢等(需要點時間1-2分鐘) 都執行完再開啟看 

  方法二: 

  這是個典型問題~~~~~引起這個問題的原因很多。一般來講就是給系統打上補丁和更換記憶體、給記憶體換個插槽這3種方法來解決。[系統補丁只要到Microsoft Update網站線上更新就可以了] 

  造成這種問題的原因很多,不能單純的下結論,儘量做到以下幾點可能對你有幫助: 

  1。確保使用的是未修改過的軟體(非漢化、破解版) 

  2。使用改軟體時儘量不要執行其他軟體。(這是個臨時檔案,可能某些軟體也在使用臨時資料夾,所以產生干擾) 

  3。把那些什麼桌面工具,記憶體整理工具通通關掉(你至少有2個類似的工具在執行)” 

  處理方法: 

  執行regedit進入登錄檔, 在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks下,應該只有一個正常的鍵值"{AEB6717E-7E19-11d0-97EE-00C04FD91972}, 將其他的刪除。 

  〔我個人的最後解決和看法〕 

  我今天嘗試了多種辦法,最後我發現問題出在微軟的NET.Framework上面。我升級了這個軟體,並打齊了補丁,短暫平安後,有出現“記憶體不能為read”的情況。後來我受上面文章的啟發,解除安裝了微軟的NET.Framework1.0和1.1,世界太平了。 

  另外:如果是開啟“我的電腦”、“我的文件”等的時候出現上述情況,還有一種可能,就是你的右鍵選單太臃腫了,此時只要清理右鍵選單問題就解決了。 

  〔試驗的結果〕 

  上面的方法,最管用、最徹底的方法是這個: 

  執行 輸入cmd 回車在命令提示符下輸入 

  for %1 in (%windir%\system32\*.dll) do regsvr32.exe /s %1 

  【技巧】如果怕輸入錯誤的話,可以複製這條指令,然後在命令提示框點選左上角的c:\,使用下面的“編輯-貼上”功能就不容易輸錯了。在飛速滾屏完全靜止之後,彆著急啟動其他程式,先耐心等一會兒,因為此時dll們還在找位置。直到你的指示燈不閃了再做別的.


相關文章