-
09-10-2010, 04:42 PM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Làm thế nào để phát hiện ra là Người dùng đang nhấn phím hay Unikey?
Khi Hook bàn phím mỗi lần bấm tiếng việt thằng Unikey hoặc vietkey nó tự SendInput phím VK_BACK ( mã ký tự 8 )
Làm thế nào để Phát hiện ra là Người dùng đang nhấn phím VK_BACK hay do Unikey bắn ra ?
Có cách nào để nhận ra là ngừoi dùng đang nhấn phím chứ không phải là 1 ứng dụng đang sendInput Không ?View more random threads:
- Phân biệt giữa mô hình xử lý dùng multithread và dùng nhiều process.
- API GetCommandLine Tác dụng ?
- Xử lý giới hạn di chuyển trong game Xếp Hình?
- Lập trình GUI cho mình trên Windows như thế nào?
- Cách lấy thread start address và suspend start address
- Antivirus Tìm EOP của 1 File PE
- Vector
, _beginthreadex Lỗi Unhandled exception khó hiểu ? - SetWindowsHookEx dont Work on Vista
- Hỏi về Hook IAT ?
- Không thể bắt được phím trong hook.
-
12-10-2010, 05:25 PM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
vấn đề này mình cũng đang quan tâm và cũng đang nghiên cứu. hook phím mà do SendInput (hay keybd_event) thì hàm học nó đều hiểu là bấm phím. thành thử ra rằng ta send 1 phím 'v' thì nó sẽ hiểu nhầm là bấm phím liên tục, ->vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv...
Bạn nào có giải pháp giúp với
-
12-10-2010, 05:34 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Thằng Unikey nó xử lý thế này:
VD như bấm 2 phím o và w thì nó sẽ tự động send 1 phím backspace để xóa phím w và vẽ lại thành chữ ơ, vì thế khi Hook trong điều kiện có Unikey các chương trình Hook sẽ bị sai sạch, ai có cách gì thì chỉ giáo mình nhé
-
14-03-2014, 09:48 AM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Xin lỗi mọi người vì đào mộ, em chia sẻ phương pháp của em với thằng Unikey này:
1. Cách rất củ chuối: Đó là đo thời gian.
Bạn biết đấy, lúc unikey gửi backspace là ngay lập tức nó sẽ gửi tiếp 1 ký tự nữa tới. Như vậy ta dùng 1 biến bắt thời điểm gõ backspcae và thời thời điểm ký tự tiếp theo tới. Nếu giá tri nó nhỏ (em đã đo sử dụng phím điện thoại BB 9900 (1.2GHz) thì đã cố gắng hết sức thời gian nhanh nhất bấm nút là 0.05 giây) hơn rất nhiều nếu dùng clock() tính giây theo xung nhịp CPU. PP này mà khi lag thì ko bik thế nào.
2. Kiểm tra ký tự gửi tới:
Ngoại trừ phím backspace mà Unikey gửi tới thì ký tự gửi tiếp không phải là phím ký tự trên bàn phím (à, ă, â, ù, ừ, ...) nên mình sẽ check nó với bảng key code là ra.
Tuy nhiên nếu người dùng sử dụng chức năng "Clipboard cho unicode" thì mệt hơn 1 chút, nhưng mà hiện tại thì các phần mềm và bản thân unikey điều chuyển sang chuẩn unicode rồi ít dùng chức năng này.
Mong các bác góp ý cho phương pháp của em.
Thông qua phân tích dữ liệu Google từ 86 quốc gia, mới đây, một công ty tại Anh đã công bố bảng xếp hạng kích tấc "cậu nhỏ" của các nước trên thế giới. Kết quả, hầu hết các nước xếp ở nhóm đầu của...
"Chim" của chàng trai Việt thuộc...