2011-08-28 37 views
5

Tôi cần sử dụng cổng nối tiếp ở phía máy khách của ứng dụng dựa trên web. giải pháp được đề xuất cho việc sử dụng cổng nối tiếp trong trình duyệt web. Firefox addon có thể sử dụng cổng nối tiếp hoặc chức năng dll cuộc gọi? giải pháp nào khác?Sử dụng cổng nối tiếp trong môi trường web

+2

Nó chắc chắn có thể, nhưng nó sẽ không được rất chéo trình duyệt và nền tảng thân thiện. –

+0

Bạn có thể nhận được một bo mạch chủ với một cổng nối tiếp những ngày này ?! Tôi tưởng tượng bạn sẽ phải sử dụng USB để chuyển đổi nối tiếp ... –

+0

@OMGPonies xin chào, tôi nghĩ rằng không có chuyển đổi * thực *, hãy cẩn thận về việc dựa vào USB là một giao thức rất nặng, đôi khi không có lý do, cửa sổ/linux nó ngừng làm việc vẫn còn bạn khởi động lại máy tính hoặc cắm/cắm vào kết nối USB, đôi khi đó là không thể chấp nhận được, cổng nối tiếp đơn giản cũ ổn định hơn nhiều –

Trả lời

7

Bạn sẽ phải viết các tiện ích bổ sung để thực hiện công việc này.

Đối với Internet Explorer; bạn có thể viết Browser Helper Object(BHO).

Dành cho Firefox, Chrome và Safari; Tôi nghĩ rằng lựa chọn duy nhất của bạn là viết một Plugin Netscape sử dụng NPAPI. FireBreath là một khung công tác rất hữu ích để xây dựng các loại plugin này vì nó xử lý rất nhiều công việc bẩn thỉu cho bạn, cho phép bạn tập trung vào chính plugin đó. Điều này sẽ cho phép bạn loại bỏ ba thứ đó bằng một hòn đá - bạn cũng có thể viết nó thành nền tảng chéo (hỗ trợ nhiều hệ điều hành) nếu bạn muốn. Mỗi trình duyệt đều có các mô hình mở rộng của riêng mình mà có thể được viết bằng JavaScript thuần túy; nhưng họ không hiển thị API cổng nối tiếp do thiếu các mối quan tâm về nhu cầu và bảo mật; làm cho NPAPI trở thành giải pháp khả thi duy nhất.


Tuy nhiên, tất cả những gì đã nói, tôi sẽ hỏi bạn có nên làm điều này trong trình duyệt hay không. Điều này nghe có vẻ giống như một ứng dụng khách, với tôi.

Bạn có một vài tùy chọn khác tùy theo nhu cầu của mình. Nếu bạn đang viết riêng cho nền tảng Windows, nhiều người đã thấy rằng họ có thể sử dụng Silverlight 4 Out-of-Browser cộng với đối tượng Active-X để truy cập cổng nối tiếp (Silverlight không có API gốc để truy cập cổng nối tiếp). Điều này sẽ không hoạt động trong trình duyệt; nhưng đó là một lựa chọn để xem xét.

2

Hãy xem xét một ứng dụng khách hạng nhẹ triển khai giao thức websocket.

Các vấn đề liên quan