2009-01-24 40 views
6

Tôi đang cố gắng để thiết lập một ứng dụng C# trong đó sử dụng TWAIN example from code projectC# TWAIN tương tác

này hoạt động tốt ngoại trừ việc tôi cần phải cast Form-IMessageFilter và gọi IMessageFilter.PreFilterMessage() để bắt callbacks TWAIN.
Ngoài ra tôi cần phải bắt đầu lọc này bằng cách gọi

Application.AddMessageFilter(); 

Có cách nào để làm điều tương tự trong WPF Window? (Để thêm bộ lọc tin nhắn và bắt TWAIN gọi lại).

Một câu hỏi cấp độ hoàn toàn khác: Có ai biết về thư viện C# TWAIN thay thế \ wrapper không?

Cảm ơn bạn.

Trả lời

4

Bạn có thể dùng thử với sự kiện ComponentDispatcher.ThreadFilterMessage.
Theo như tôi hiểu, nó phục vụ cùng một mục đích trong WPFApplication.AddMessageFilter() trong WinForms.

1

Tôi nghĩ TWAIN được coi là lỗi thời. Có thể hãy xem WIA, công việc này từ WinXP. Ngoài ra còn có a sample tại codeproject. Về WPF liên quan đến câu hỏi, không có ý tưởng, tôi chỉ sử dụng nó trong các cửa sổ hình thức ứng dụng.

+3

driAn, TWAIN * cũ * nhưng không lỗi thời. Nó có hỗ trợ thiết bị rộng lớn. Ngoài ra, máy quét của tôi không hỗ trợ WIA (kỳ quặc). – Valentin

+1

Vâng, microsoft coi nó là lỗi thời, họ đề nghị sử dụng WIA thay thế. – driAn

+4

Hmm ... Không có mối quan hệ nhân quả giữa ý kiến ​​của Microsoft và thực tế đồng thuận, theo một trong hai hướng. Tôi làm việc với TWAIN, và ít nhất là để quét tài liệu, WIA đã lỗi thời và đã được kể từ khi nó được giới thiệu. Họ đã giới thiệu nó trong một giai đoạn ngắn ngủi khi họ vui mừng về việc ăn cắp táo. Sau đó, Burning Eye quay sang những thứ khác, và nó đã trở nên uể oải kể từ đó. Tôi đề nghị nó cho máy ảnh kỹ thuật số mặc dù. – Spike0xff

6

Tôi vừa quấn lên các mã từ bài viết Thomas Scheidegger của (CodeProject: .NET TWAIN image scanning) vào github project

Tôi đã dọn dẹp API một chút và thêm hỗ trợ WPF, vì vậy kiểm tra xem nó ra. :)

Nó có một ứng dụng WPF đơn giản cho thấy cách lọc thư hoạt động với WPF.

+0

Công việc tuyệt vời, cảm ơn – Valentin