找回密码
 立即注册

QQ登录

只需一步,快速开始

mosquito

初级会员

24

主题

138

帖子

328

积分

初级会员

积分
328
mosquito
初级会员   /  发表于:2016-1-20 11:57  /   查看:5417  /  回复:5
在扫描执行 _twainSession.Acquire(TwainUserInterfaceFlags.Show);时报错,错误信息如下:
正尝试在 OS 加载程序锁内执行托管代码。不要尝试在 DllMain 或映像初始化函数内运行托管代码,这样做会导致应用程序挂起。
附件是我的demo请帮我看下是哪里的原因,谢谢啦

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

5 个回复

倒序浏览
AvoCaDolol活字格认证 Wyn认证
社区贡献组   /  发表于:2016-1-21 09:41:00
沙发
回复 1楼mosquito的帖子

您好,
我使用您提供的代码在我本机测试并没有发现问题。无论是选择扫描仪还是打开扫描窗口都是正确的。




能否将您的错误信息抓取并发到论坛里,我想看看异常信息。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
mosquito
初级会员   /  发表于:2016-1-21 11:10:00
板凳

选择完扫描仪,点击扫描的时候就是执行button2里是方法的时候回报错

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
AvoCaDolol活字格认证 Wyn认证
社区贡献组   /  发表于:2016-1-22 12:30:00
地板
回复 3楼mosquito的帖子

您好, 经过百度,我找到了解决方法,您可以参考下面的说明来尝试解决。
解决办法:
       在"Debug"菜单下----"Exceptions"----"Managed Debugging Assistants"中勾掉"LoaderLock"
     说明:
     .NET2.0中增加了42种非常强大的调试助手(MDA),Loaderlock是其中之一。Loaderlock检测在一个拥有操作系统loader lock的线程上运行托管代码的情况。这样做有可能会引起死锁,并且有可能在操作系统加载器初始化DLL前被使用。虽然这样做很有必要,但在进行开发调试的时候,实在太麻烦。

     注意:不是工程属性里的debug,而是菜单栏的debug

原文地址:http://www.cnblogs.com/jetz/archive/2011/01/02/1924040.html
回复 使用道具 举报
mosquito
初级会员   /  发表于:2016-1-29 08:58:00
5#
谢谢您了,我刚刚试了可以了,万分感谢!
回复 使用道具 举报
mosquito
初级会员   /  发表于:2016-1-29 09:37:00
6#
您好,还有个问题想问下,那个通过twain来扫描文件时,选择完扫描仪,扫描文件的时候是不是必须要显示扫描仪的twain的接口页然后点击那个页面扫描按钮才能扫描呢,有没有方法可以直接执行扫描操作呢
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部