2014-09-17 4 views
0

Я пытаюсь выполнить сканирование изображения со сканера, подключенного к моему устройству, я попытался использовать WIA, но не все его поддерживающие, Я нашел проект, выполненный на бланках Windows и WPF в https://github.com/tmyroadctfig/twaindotnetВеб-формы ASP.NET Сканирование изображения из сканера с использованием TWAIN

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, то, что я хочу, чтобы использовать его в ASP.NET под System.Web.UI.Page , как я могу это сделать, если его можно?

проверьте ссылку, предоставленную мной для более подробной информации!

спасибо!

+1

Даже если у вас это работает, он попытается выполнить сканирование на веб-сервере, а не на машине, где пользователь просматривает. Единственный путь к этому - через плагин, например, flash или silverlight. –

+0

@JoelCoehoorn не могли бы вы направить меня больше? –

+0

У вас есть код, который работает на веб-сервере. На ваших компьютерах пользователей ничего не работает. Вам нужно вернуться к чертежной доске. –

ответ

3

Вы можете использовать плагин TWAIN на основе браузера, например. Динамический веб-интерфейс TWAIN для взаимодействия со сканерами подключается к клиентским компьютерам. Вы можете попробовать онлайн-демонстрацию онлайн-сканирования ASP.NET here и посмотреть, как она работает для вас.

Отказ от ответственности: Я работаю в компании.

+0

Я хотел получить бесплатную версию, но в итоге я использовал Dynamic Web TWAIN спасибо –

+1

Добро пожаловать. Рад, что наш веб-TWAIN SDK отвечает вашим потребностям. – Rachel