Tesseract 3.02 Unable to load DLL
Ich versuche zu schaffen, ein einfaches OCR-Programm mit Tesseract .Net wrapper für tesseract-ocr. Ich habe versucht, das Beispiel-Projekt, und es funktionierte wie ein Charme.
Das problem ist, wenn ich aus meinem wpf-Projekt ein Unable to load DLL 'libtesseract302': The specified module could not be found.
Fehler tritt auf, Nichts zu tun mit dem code. Ich habe versucht, Dependency Walker ad es sagt, ich bin fehlen 3 DLLs. Sie scheinen zu Windows-DLLs, aber Sie existiert nicht hier: Windows-API-Sets eine Idee was Los ist???
EDIT:
Wechselte ich das Ziel-framework 4 von 4.5, und es ist nichts falsch mit diese DLLs jetzt (das Beispiel-Projekt, das perfekt funktioniert, ist die Verwendung von NET Framework 4.0).
Nun das problem ist: Failed to initialise Tesseract Engine
. Hier mein simpler code, wenn das hilft:
try
{
using (TesseractEngine engine = new TesseractEngine(@"./tessdata", "eng", EngineMode.Default))
{
using (Pix img = Pix.LoadFromFile(filename))
{
using (Tesseract.Page page = engine.Process(img))
{
text = page.GetText();
}
}
}
}
catch (Exception ex)
{
text = ex.Message;
}
finally
{
conv_text_tb.Text = text;
}
- Sind Sie sicher, dass Sie kopieren alle tesseract-bezogenen DLLs in das bin/ - Ordner? Vielleicht möchten Sie auch die Namen der DLLs, die Sie Probleme mit.
- Ja, das Tue ich. Die fehlenden DLLs sind
API-MS-WIN-CORE-KERNEL32-PRIVATE-L1-1-1.DLL
,API-MS-WIN-CORE-PRIVATEPROFILE-L1-1-1.DLL
,API-MS-WIN-SERVICE-PRIVATE-L1-1-1.DLL
. - Haben Sie versuchen Sie Googeln den Namen der DLLs? Ich fand viele threads auf der MSDN-Website zu Windows 8... Sie zu entfernen, aus Mangel an einem besseren Wort. Es gibt auch andere Möglichkeiten geprüft, in den threads als auch.
- Ja, habe ich. Ich habe die Ziel-framework 4 von 4.5, und es ist nichts falsch mit diese DLLs jetzt (das Beispiel-Projekt, das perfekt funktioniert, ist die Verwendung von NET Framework 4.0). Das problem ist jetzt:
Failed to initialise Tesseract Engine.
ich bin eine Aktualisierung der Frage mit meinem code. Danke.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Okay fand ich heraus, das beheben dieser Fehler. Ich habe die
Copy to Output Directory
Eigenschaft des DLL-Dateien und die Dateien, die sich in der tessdata Ordner zuCopy Always
. Es funktioniert nun perfekt.