Chuyển đổi / dev / ttyUSB sang cổng com để sử dụng nó với Wine trong Linux


4

Tôi có một số phần mềm chạy trên Windows. Tôi đã cài đặt Wine và chạy nó trong Linux. Nó hoạt động tốt nhưng vấn đề là nó giao tiếp với một cổng nối tiếp. Vì vậy lựa chọn duy nhất tôi có thể chọn được com1, com2...

Nhưng thiết bị của tôi trên máy Linux thực sự được đặt tại /dev/ttyUSBnvị trí. Làm cách nào để sử dụng phần mềm trên trong Linux Ubuntu?

Tôi đã thử ln -s /dev/ttyUSBn COM1trong ~/.wine/dosdevices/. Nó không xuất hiện để làm việc.

Câu trả lời:


3

Symlinks nên hoạt động; tuy nhiên, chúng phải được đặt trong ~/.wine/dosdevices/, không nằm trong bất kỳ thư mục ngẫu nhiên nào. Các bài viết winehq cũng cho thấy những cái tên trong trường hợp thấp hơn.

4.3.1. Cổng nối tiếp và song song

Cấu hình cổng nối tiếp và song song rất giống với cấu hình ổ đĩa - chỉ cần tạo một liên kết tượng trưng ~/.wine/dosdevicesvới tên của thiết bị. Cổng nối tiếp các cửa sổ làm theo một quy ước đặt tên của chữ "com" theo sau là một số, chẳng hạn như com1, com2vv Tương tự, cổng song song sử dụng "LPT" theo sau là một con số, chẳng hạn như lpt1. Bạn nên liên kết chúng trực tiếp với các thiết bị Unix tương ứng, chẳng hạn như /dev/ttyS0/dev/lp0. Ví dụ: để định cấu hình một cổng nối tiếp và một cổng song song, hãy chạy các lệnh sau:

ln -s /dev/ttyS0 com1
ln -s /dev/lp0 lpt1

1
Đúng. Đó chắc chắn là nơi tôi đặt nó. Tôi cũng đã thử thay đổi quyền của các tệp com và cũng đã thêm các chỉnh sửa đăng ký theo wiki. Tôi vẫn không gặp may
Sab

0

Bắt đầu từ Wine 2.8, phương pháp chỉnh sửa symlink đơn giản về cấu hình không hoạt động. Người ta phải cấu hình các cổng COM bằng cách chỉnh sửa đăng ký Wine. Từ Hướng dẫn sử dụng rượu vang / Những thứ khác để cấu hình / Cổng nối tiếp và song song :

Để ghi đè ánh xạ thiết bị mặc định của Wine, hãy chạy wine regeditvà tạo các mục nhập chuỗi trong HKEY_LOCAL_MACHINE\Software\Wine\Portsđó tên mục nhập là tên thiết bị Windows và giá trị mục nhập là đường dẫn đến thiết bị Unix. Tiếp tục với ví dụ trên, để biến COM1 thành cổng nối tiếp được gắn USB đầu tiên, hãy tạo một mục nhập có tên COM1và giá trị /dev/ttyUSB0. Bạn cũng có thể muốn tạo một mục có tên COM5không có giá trị để xóa COM5thiết bị hiện là bản sao COM1. Sau khi chỉnh sửa sổ đăng ký, hãy tắt Wine với wineserver -kvà lần sau Wine chạy chương trình, các thay đổi của bạn sẽ có hiệu lực.


-1

Trong một số trường hợp, phần mềm MS sử dụng GetCommConfig()trong Wine cần khóa đăng ký được đặt một cách rõ ràng nếu tính năng phát hiện tự động được mô tả trong https://wiki.winehq.org/Wine_User%27s_Guide#Serial_and_Parallel_Ports không tự động phát hiện cổng của bạn.

Hãy thử thiết lập khoá đăng ký ~/.wine/system.regnhư thế này:

...
[Hardware\\Devicemap\\Serialcomm] 1231984861
"Serial0"="COM1"
...

Nó làm việc cho tôi với ln -s /dev/tty.usbmodemFD121 ~/.wine/dosdevices/COM1thiết bị của tôi .


(1) Câu trả lời không nên đặt câu hỏi. (2) Bạn lấy thứ này ở đâu? Tôi không thể tìm thấy Devicemaphoặc Serialcommtại trang Khóa đăng ký hữu ích mà bạn đã liên kết đến.
Scott

Tôi cần một ~/.wine/system.regkhóa phần cứng như thế này cho mỗi github.com/tomojitakasu/RTKLIB/issues/ mẹo
Dave X
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.