PDA

View Full Version : Điều khiển chuột máy tính khác trong mạng lan.



dhbd
05-04-2009, 16:09
Em đang làm cái đồ án môn học lập trình ứng dụng mạng,đề tài là điều khiển chuột giữa 2 máy tính trong mạng lan(em dùng C# để lập trình).Xin hỏi mọi người là làm thế nào để mình ngồi máy tính này mà điều khiển được chuột của máy tính kia nhỉ?.
Em có ý định là dùng bàn phím máy tính này để điều khiển chuột ở máy tính khác bằng cách:bên này gõ phím M chẳng hạn thì chuột bên máy bên kia di chuyển đến 1 tọa độ nào đó.Mà dùng hàm nào để điều khiển chuột bằng bàn phím?
Mọi người chỉ em với.

trantrungx910
16-05-2009, 09:19
ặc tui cũng đang cần tìm hiểu về vấn đề này sao không ai trả lời nhỉ

duongdragonxxx
17-05-2009, 01:51
làm chương trình với yêu cầu như thế cũng đơn jản
ta có 1 số đối tượng sau:
- admin: ra lệnh
- server: truyền tải nội dung
- victim: đối tượng thực hiện

trong trường hợp này gom chung cả server và ct admin vào làm 1 (chỉ làm vd)

admin chuyển lệnh cho server, server ra lệnh cho victim thực hiện lệnh

di chuyển chuột: sử dụng object cursor.

PS: Bản thân server có thể là 1 web or win app, chạy liên tục để lắng nghe các request. Hoặc sử dụng hình thức khác, victim chạy liên tục và nghe xem server có yêu cầu nào hok.

giangnamno1
23-07-2010, 11:31
sao mà bày khó hiểu thế không bik.? hjx em moi hoc lop 8 ak? bay thêsao em bik dc ?

littleNeo
23-07-2010, 14:20
Cái này bạn cần tìm hiểu cớ chế Message của Windows hoạt động như thế nào trước đã. Bạn có thể tham khảo giáo trình C for Windows của Đại học (Đại học CNTT hoặc Tự nhiên có dạy môn này) hay cuốn "Lập trình Windows" của tác giả Lê Hữu Đạt, những tài liệu trên có giảng giải cơ chế message của Windows hoạt động như thế nào.

Làm gì thì làm bạn vẫn cần 1 cái client ở máy bị điều khiển. WinAPI có 2 hàm SendMessage và PostMessage để send window message cho Windows hoặc bất kì 1 object, Application nào đó.

Có 1 vấn đề nữa là làm bằng C# khá cực vì bạn phải Wrap lại những WinAPI function trong C#, function thì wrap được nhưng những struct sử dụng cho function thì phải gõ lại. Bạn lên www.pinvoke.net, nó có 1 Add-in giúp bạn làm việc này đơn giản hơn. Hầu hết khi lập trình System trên .NET, bạn không có đủ permission để access hay ra lệnh cho Operating System, ví dụ như Shutdown chẳng hạn và nhiều hạn chế khác do policy của .NET Framework, bạn cần lưu ý chỗ này.

Còn Client-Server như thế nào thì mình khuyên bạn nên dùng TCP và tự thiết kế ra Communication Protocol của riêng mình, nếu lấy màn hình 1024x768 32bit thì size của 1 Frame là 1024x768x4 ~ 3MB, nén lại trước khi gửi thì ~100KB -> 400KB tùy vào mức độ lòe loẹt của Màn hình Desktop. WebApp Server là không hợp lý, đa số các ứng dụng online meeting cho phép share màn hình như DimDim phải dùng Flash và xin cấp permission, Goto Meeting yêu cầu bạn phải cài 1 cái client nho nhỏ trước khi có thể share, Application như VNC thì có VNC Server có thể chạy như Windows Application hay Win Service, còn phía client là VNC Viewer có thể chạy WinApp hay Win Service tùy ý.

Đọc kỹ hướng dẫn sử dụng trước khi dùng.

bienca101
25-07-2010, 11:19
Tới bé học lớp 8:
Link sau có source-code để làm remote desktop điều khiển mouse & keyboard.
http://socketcoder.com/ArticleFile.aspx?index=2&ArticleID=53

(Nói nhỏ: giỏi quá, ráng lên nhá bé. Lớp 8 mà đã nhảy sang networking programming là xịn lắm đấy.)