21120090 Mai Trần Phú Khương Nhóm trưởngII – Bảng phân công và tiến độ công việc: 1 List processes + Start/Stop processes + Kết nối socket gửi nhận dữ liệu + Liệt kê các tiến trình + Mở
Trang 1TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN – ĐHQG TPHCM NHÓM NGÀNH MÁY TÍNH VÀ CNTT
-
Remote-Control Môn học : Mạng Máy Tính
Thành viên: 21120090 – Mai Trần Phú Khương
21120085 – Võ Gia Khang
2112606 – Lầm Hoài Hiếu
Hồ Chí Minh, Thứ tư, ngày 23 tháng 11 năm 2022
Trang 2Nội dung
I- Thành viên: 2
II – Bảng phân công và tiến độ công việc: 2
III- Các chức năng của phần mềm: 4
* Điều khiển máy tính trực tiếp thông qua ứng 4
dụng + Hiển thị màn hình Server real-time: 4
1 List processes, start/stop processes: 5
2 List app, start/stop app: 7
3 Shut down : 8
4 Keystroke : 9
5.PrintScreen: 12
IV – Môi trường lập trình và framework: 15
V – Tài liệu tham khảo: 15
I- Thành viên:
Trang 321120090 Mai Trần Phú Khương Nhóm trưởng
II – Bảng phân công và tiến độ công việc:
1 List processes +
Start/Stop processes
+ Kết nối socket gửi nhận dữ liệu
+ Liệt kê các tiến trình
+ Mở/ tắt các tiến trình
Lâm Hoài Hiếu
100%
2 List Applications +
Start/Stop App
+ Kết nối socket gửi nhận dữ liệu
+ Liệt kê các ứng dụng
+ Mở/ tắt các ứng dụng
Lâm Hoài Hiếu
100%
3 Chụp màn hình + Kết nối socket gửi
nhận dữ liệu + Đọc nhận dữ liệu dạng ảnh và vẽ lại ảnh thông qua các thư viện graphic của Java
Võ Gia Khang
100%
4 Bắt phím nhấn + Kết nối socket gửi
nhận dữ liệu + Bắt sự kiện lắng nghe phím nhấn từ server/ kết thúc lắng nghe phím nhấn
+ In phím nhấn ra
Mai Trần Phú Khương
100%
Trang 4giao diện
5 Tắt máy + Kết nối socket để
gởi nhận tín hiệu tắt máy
+ Tắt máy từ xa
Võ Gia Khang
100%
6 Thao tác/ điểu khiển
server trực tiếp trên ứng
dụng ( bao gồm di
chuyển chuột, ấn chuột
click chuột, bắt phím )
+ Kết nối socket và giữ kết nối để gởi nhận các phím nhấn, các thao tác click chuột (mouse, move, mouse up, mouse down, key press,v.v)
Mai Trần Phú Khương
năng nâng cao thêm
7 Hiển thị giao diện Server
real-time
+ Kết nối socket và giữ socket để gởi nhận ảnh màn hình của Server liên tục, qua đó hiển thị giao diện real-time
Mai Trần Phú Khương
năng nâng cao thêm
Phú Khương
100%
9 Làm Video + Quay video demo
Với OBS + webcam thông qua điện thoại cá nhân
Mai Trần Phú Khương
100%
III- Các chức năng của phần mềm:
Chức năng nâng cao :
Trang 5* Điều khiển máy tính trực tiếp thông qua ứng
- Người dùng có thể thao tác di chuyển chuột, mở ứng dụng trực tiếp trên app thông qua màn hình Server được hiển thị real-time trên ứng dụng
1 List processes, start/stop processes:
- Hàm openProcessBtnActionPerformed() : Bắt hiển thị processes list khi ấn vào
nút
Trang 6+ This.pInp.readUTF(): Đọc các processes nhận được từ Server
+ DefaultTableModel để tạo bảng với colName là tên các cột
+ class ProcessesFrame : dùng để đổ dữ liệu từ bảng lên giao diện
- Hai hàm StartappActionPerformed và KillActionPerformed nằm trong class
ProcessesFrame dùng để bắt sự kiện khi người dùng ấn vào nút Start/ Kill process
trên màn hình
Trang 7Giao diện của chức năng sau khi ấn nút:
Trang 82 List app, start/stop app:
- Hàm AppRunningActionPerformed : dùng để bắt sự kiện khi người dùng click
vào nút AppRunning
+ Lớp RunningAppFrame: đổ dữ liệu danh sách các app ra màn hình giao diện
Trang 9Giao diện của chức năng list-app :
3 Shut down :
+ Hàm remoteShutdown : nhận vào 1 đia chỉ ip của server và thực hiện tắt máy từ xa
+ Hàm shutdownBtnActionPerformed: bắt sự kiện khi user click vào nút
ShutDown
Trang 10Giao diện của chức năng:
4 Keystroke :
+ Lớp KeystrokeReceiver dùng để lắng nghe phím nhấn từ phía server
Trang 11+ Lớp KeyLogger là lớp của Server dùng để gởi thông tin từ server phím nhấn đến
client để hiển thị ra màn hình
Trang 12Giao diện của keystroke:
5 P ri nt S cr een:
+ Lớp ReceiveScreen ở phía client dùng để nhận screen từ server và thông qua
các hàm của java vẽ lại screen đó ra giao diện của ứng dụng
Trang 13+ Lớp SendScreen ở phía server để gởi từng screenshot của server cho client
Giao diện của chức năng printscreen
IV – Môi trường lập trình và framework:
+ Apache Netbeans 15:
+
Trang 14
+ VMWare:
+ OBS:
V – Tài liệu tham
khảo:
kwhat/jnativehook/example/NativeHookDemo.java
https://www.comparitech.com/net-admin/shutdown-reboot-remote-computer/
Trang 158 https://viettuts.vn/java-swing