簡體   English   中英

當我調用 OpenFileDialog 的 ShowDialog 方法時,vshost32.exe 已停止工作

[英]vshost32.exe has stopped working when I call the ShowDialog method of OpenFileDialog

我有一個 c# 應用程序,我正在對其進行最終測試。

但是現在,一直有效的 function 不再有效了!

我有一個按鈕,當我點擊它時我想瀏覽文件,我看到“打開文件”windows,半秒后,我收到一個未捕獲的視覺工作室錯誤:

vshost32.exe 已停止工作:

抱歉,錯誤發生在法語本地化計算機上:

Signature du problème :
  Nom d’événement de problème:  APPCRASH
  Nom de l’application: TOM.vshost.exe
  Version de l’application: 10.0.30319.1
  Horodatage de l’application:  4ba2084b
  Nom du module par défaut: ntdll.dll
  Version du module par défaut: 6.1.7600.16695
  Horodateur du module par défaut:  4cc7ab44
  Code de l’exception:  c0000008
  Décalage de l’exception:  0004631f
  Version du système:   6.1.7600.2.0.0.256.48
  Identificateur de paramètres régionaux:   4108
  Information supplémentaire n° 1:  ffb6
  Information supplémentaire n° 2:  ffb61531feaa1f65f528a2694a510c22
  Information supplémentaire n° 3:  b220
  Information supplémentaire n° 4:  b2205da238309b0a025a25162a3a18f3

我的代碼是:

OpenFileDialog ofd = new OpenFileDialog {Filter = Filters};
if (ofd.ShowDialog() != true) {
    return;
}

當我在 ofd.ShowDialog 中時它崩潰了。

這是代碼相關的問題嗎?

你知道如何調試嗎? 或者甚至如何調試這個?

當激活“要調試的非托管代碼”時,我得到了這個:

"First-chance exception at 0x77cd631f in TOM.exe: 0xC0000008: An invalid handle was specified."

堆棧跟蹤是否有幫助:

>   ntdll.dll!77cd631f()    
    [Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll] 
    ntdll.dll!77d1792d()    
    ntdll.dll!77ce343b()    
    ntdll.dll!77ce2d80()    
    ole32.dll!776b4102()    
    ole32.dll!776b411e()    
    ole32.dll!7767e505()    
    SearchFolder.dll!1046b49d()     
    SearchFolder.dll!1046b267()     
    shell32.dll!76281cb7()  
    shell32.dll!761701b6()  
    shell32.dll!761991fd()  
    shell32.dll!761d61ee()  
    shell32.dll!761d6159()  
    System.ni.dll!524c4ed4()    
    shlwapi.dll!77b6b6cf()  
    ntdll.dll!77cbb428()    
    ntdll.dll!77cbe6f9()    
    kernel32.dll!77c01114()     
    ntdll.dll!77ceb429()    
    ntdll.dll!77ceb3fc()    

我嘗試過的一些事情:

一個重要的新點:在沒有visual studio的情況下運行它似乎沒有發生錯誤(這似乎是邏輯)

要點之二:似乎相同的代碼在另一台計算機的 visual studio 中工作(完全相同並發出 windows 的相同圖像

我嘗試刪除所有文件並執行 GetLatest,但仍然無效

我遇到了同樣的問題,我的解決方案是在“項目屬性/調試/啟用調試器”部分中“啟用本機代碼調試”。

我想,我應該能夠調試問題,但錯誤消失了。

我有一個非常類似的問題讓我瘋狂了幾天。 它最終成為我的筆記本電腦上預裝的Lenovo Password Manager。 它使用密碼框覆蓋表單,並使用記住密碼橫幅。 自卸載以來我沒有遇到過這個問題。

我對任何遇到這種情況的人的建議是檢查你是否有任何軟件完全覆蓋,並檢查是否是原因。

我只是重新安裝了這台計算機的圖像,我在安裝后完成了它現在可以工作:/。 很奇怪

我在VB項目中遇到過“VS Express 2013 for Windows Desktop”這個問題。 在菜單DEBUG - > Exceptions ...中檢查了一個項目。 在該對話框中的“全部重置”(取消全部檢查)后,問題消失一次,但下次再次出現。 有一個0x4000001f,所以我發現程序和調試器退出沒有指示問題 給出的提示再次只幫助onec:Project - > Properties - > Debug並關閉 “啟用Visual Studio托管過程”。 后來又出現了問題!

我記得在帶有德語語言環境的計算機上看到類似於此的東西,我們的法語應用程序。 我不記得我們是如何解決它的,但相似性指向我檢查區域設置...無效的句柄雖然通常意味着你調用的對象已被破壞,但我真的無法猜測哪個對象,因為它必須仍然有效這一點。

我的解決方案是添加新的調試方法。 而不是AnyCPU我使用x86調試(在上面的“開始”按鈕旁邊單擊配置管理器 - >平台 - >新建 - > x86 )。 與此同時,我還在Project Properities中啟用了ClickOnce安全設置 ,以“這是完全信任的應用程序”,但不知道其影響。 希望這將有助於somone。

我有同樣的問題我的異常代碼是c0020001。 我通過重置所有異常解決了這個問題。 為此,請轉到{Debug - > Exceptions},然后您可以重置所有異常。

在 HKLM\Software\Microsoft NT\CurrentVersion\AeDebug 位置下的注冊表中添加 DWORD 類型的鍵“Auto”並設置為零。

暫無
暫無

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

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