我试图从连接到我的设备的扫描仪扫描图像,我尝试使用WIA,但并非所有扫描仪都支持它, 我在https://github.com/tmyroadctfig/twaindotnet
中找到了在Windows窗体和WPF上创建的项目public class WpfWindowMessageHook : IWindowsMessageHook
{
HwndSource _source;
WindowInteropHelper _interopHelper;
bool _usingFilter;
public WpfWindowMessageHook(Window window)
{
_source = (HwndSource)PresentationSource.FromDependencyObject(window);
_interopHelper = new WindowInteropHelper(window);
}
public IntPtr FilterMessage(IntPtr hwnd, int msg, IntPtr wParam, IntPtr lParam, ref bool handled)
{
if (FilterMessageCallback != null)
{
return FilterMessageCallback(hwnd, msg, wParam, lParam, ref handled);
}
return IntPtr.Zero;
}
public bool UseFilter
{
get
{
return _usingFilter;
}
set
{
if (!_usingFilter && value == true)
{
_source.AddHook(FilterMessage);
_usingFilter = true;
}
if (_usingFilter && value == false)
{
_source.RemoveHook(FilterMessage);
_usingFilter = false;
}
}
}
public FilterMessage FilterMessageCallback { get; set; }
public IntPtr WindowHandle { get { return _interopHelper.Handle; } }
}
上面的代码与WPF项目一起使用, 我想要的是在System.Web.Ui.Page下的ASP.NET中使用它 如果可能的话,我怎么能这样做呢?
查看我提供的链接以获取更多详细信息!
谢谢你!答案 0 :(得分:3)
您可以使用基于浏览器的TWAIN插件,例如动态Web TWAIN,与扫描仪交互连接到客户端计算机。您可以试用ASP.NET网络扫描在线演示here,看看它是如何工作的。
免责声明:我为公司工作。