Tag: 图像扫描仪

在C#中使用没有对话框的扫描仪

我正在构建一个.Net 4.0应用程序,用于远程控制扫描仪设备。 我已经尝试了TWAIN和WIA库,但我遇到了同样的问题。 扫描图像时无需 扫描仪选择和扫描设置对话框 。 我在.Net上找到了一篇关于WIA脚本的有用文章,并将其修改为: private Image Scan(string deviceName) { WiaClass wiaManager = null; // WIA manager COM object CollectionClass wiaDevs = null; // WIA devices collection COM object ItemClass wiaRoot = null; // WIA root device COM object CollectionClass wiaPics = null; // WIA collection COM object ItemClass wiaItem = null; // […]

C#WIA图像扫描失败,HRESULT:0x80070050

我希望有人遇到过这种情况 – 我正在尝试使用WIA从文档扫描仪捕获图像,但是在尝试传输图像结果时在随机机器上 – WIA报告“文件存在。 – HRESULT:0x80070050”。 在具有此问题的所有计算机上,软件的初始使用是成功的。 我能够成功连接到扫描仪,查询名称,制造商等。 我已经确定我可以成功扫描图像,如果我在另一个用户帐户下运行代码(使用右键单击以管理员身份运行)。 但是,在具有提升的权限的同一用户帐户下运行代码会导致相同的错误。 注意:在Item1.Transfer上发生exception – 所以直到这一点我还没有为WIA提供文件路径,所以这不是它所指的文件。 WIA.DeviceManager DeviceManager1 = new WIA.DeviceManagerClass(); WIA.Device Scanner = DeviceManager1.DeviceInfos[i].Connect(); WIA.Item Item1 = null; foreach (WIA.Item CurrentItem in Scanner.Items) { Item1 = CurrentItem; break; } WIA.ImageFile Image1 = new WIA.ImageFile(); //Attempt To Capture Scan Image1 = (WIA.ImageFile)Item1.Transfer(WIA.FormatID.wiaFormatJPEG); //Save To File Image1.SaveFile(Path.Combine(Path.GetTempPath(), Path.GetRandomFileName() […]

C#TWAIN互动

我正在尝试设置一个C#应用程序,它使用代码项目中的 TWAIN 示例 这工作正常,除了我需要将Form为IMessageFilter并调用IMessageFilter.PreFilterMessage()来捕获TWAIN回调。 我还需要通过调用来启动这个过滤 Application.AddMessageFilter(); 有没有办法在WPF窗口中做同样的事情? (添加消息filter并捕获TWAIN回调)。 另一个完全高级的问题:有没有人知道替代C#TWAIN库\包装器? 谢谢。