我通过以下代码在C#中使用Tessnet2 ocr:
tessnet2.Tesseract ocr = new tessnet2.Tesseract();
ocr.SetVariable("tessedit_char_whitelist", "0123456789");
ocr.Init(Application.StartupPath + @"D:\\Program Files (x86)\\Visual Studio 2010\\Projects\\AForgeTest2\\AForgeTest2\\tessdata\\", "eng", true);
List<tessnet2.Word> result = ocr.DoOCR(numberTest, Rectangle.Empty);
string code = result[0].Text;
testBox1.Text = code;
Run Code Online (Sandbox Code Playgroud)
但是当我运行调试时,它显示第5行中的错误消息:
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());//the line with error
}
Run Code Online (Sandbox Code Playgroud)
FileLoadException为Unhandle:
混合模式程序集是针对运行时的版本"v2.0.50727"构建的,如果没有其他配置信息,则无法在4.0运行时加载.
你知道如何解决这个问题吗?
亲切的问候
加夫
尝试添加
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
</configuration>
Run Code Online (Sandbox Code Playgroud)
到您的App.config.
这使您可以引用该DLL而无需更改整个项目的框架版本.