2010-05-01 64 views
0

我在Visual Studio 2008中有一個.NET 3.5 C#項目,它使用從C#項目編譯的dll(我們稱之爲dll A)。 Dll A正在使用一些C++庫。未在Visual Studio C#項目中顯示的C++錯誤

問題是,當我從DLL A調用對象時遇到錯誤,應用程序只是關閉,沒有顯示任何錯誤。但我需要知道有什麼問題,我不能只是猜測,並在這個項目上一直盲目...

我檢查了窗口的事件日誌,找不到任何東西。我在Visual Studio中檢查了拋出錯誤的設置,在菜單Debug - Exceptions中,所有這些都被檢查(包括C++異常),所以應該拋出任何錯誤。

我的代碼看起來是這樣的:

tessnet2.Tesseract tessocr = new tessnet2.Tesseract(); 
tessocr.Init(@"s:\temp\tessdata", "eng", false); 
tessocr.GetThresholdedImage(bmp, Rectangle.Empty).Save("s:\\temp\\" + Guid.NewGuid().ToString() + ".bmp"); 
List<tessnet2.Word> words = ocr.DoOCR(bmp, "eng"); //App exits at this line 

如果我把我的代碼類似

int x = Convert.ToInt32("test"); 

這應該拋出一個錯誤。它拋出,Visual Studio顯示它。

有沒有人有任何想法爲什麼沒有顯示錯誤?或者還有哪些地方可以註冊?

任何幫助非常感謝!謝謝!

回答

1

您是否在C#項目的屬性頁中激活了非託管調試?

沒有這一點,C++ DLL的調試輸出不會將其輸出到Visual Studio的輸出窗口。

+0

非常感謝你,這是訣竅! – Diana 2010-05-01 09:42:53

相關問題