2017-02-23 29 views
0

在應用程序退出與:.NET應用程序退出0x4000001f

程序 '[12868] AppName.vshost.exe' 已經與代碼1073741855退出(0x4000001f)。

以下代碼:

呼叫Export()後兩次相互:碰撞與上述記錄 呼叫的Export()裏面的內容Export()兩次(內範圍),並且它不會崩潰。

這是可重現的,我不知道從哪裏開始。

private void btnExport_Click(object sender, RoutedEventArgs e) 
{ 
    Enable(false); 

    statusbar.Message = "Exporting..."; 

    Task t = new Task(Export); 
    t.ContinueWith(ExportEnd); 
    t.Start(); 
} 

private void Export() 
{ 
    { 
     PBNSectionDictionary source = ctrlSectionSelection.SectionSelection.SelectSections; 
     PBNSectionDictionary dict = new PBNSectionDictionary(); 
     foreach (string sectionType in source.Keys) 
     { 
      if (source[sectionType] != null) 
      { 
       dict[sectionType] = collector.ReadFullSection(source[sectionType]); 
      } 
     } 
     PBNFMV.Export.PBNExport export = new PBNFMV.Export.PBNExport(new Lms.Custom.Files.AdvancedFileLocator(Constants.NAME), dict, manager); 
     export.Export(); 
     dict.Dispose(); 
    } 
} 

private void ExportEnd(Task t) 
{ 
    Enable(true); 

    statusbar.Message = "Export done"; 
} 

事件日誌:

錯誤的應用程序名稱:PBNFMV.exe,版本:16.2.0.0,時間戳:0x58aeadf2 錯誤模塊名稱:ntdll.dll中,版本:6.1.7601.23569,時間戳:0x57f7bb79 異常代碼:0xc0000374 故障偏移:0x000ce8fb 出錯進程ID:0xbd4 錯誤的應用程序的開始時間:0x01d28db92a6d6c1e 錯誤的應用程序路徑:C:\ APPPATH \源\ PBNFMV \ BIN \調試\ PBNFMV.exe 福勒婷模塊路徑:C:\ WINDOWS \ Syswow64資料\ ntdll.dll中 報告編號:72f988f9-f9ac-11e6-8d91-000acd1f71fd

例外設置完全啓用:

C++異常 公共語言運行時異常 gpu內存訪問異常 託管調試助手 win32異常

+0

檢查你檢查 –

+0

Visual Studio中的例外設置任何錯誤事件查看器? –

+0

這是事件查看器中唯一的條目嗎?應該是另一個至少 –

回答

0

問題已解決。

因此:很奇怪。

這是由於在代碼執行過程中進一步構建了一個對象(!),導致事件崩潰(因爲庫中的實現不當)。

奇怪的部分是爲什麼該對象已經實例化,我相信在.net運行時的一些最優化。

道歉

+0

要管理員:如果你想,你可以刪除這個線程因爲它不會幫助任何人。 – brecht