Đôi khi kịch bản của một tập lệnh hoặc chương trình yêu cầu bắt chước một số hành động của người dùng - ví dụ: nhấn một phím hoặc nhấp bằng chuột vào một phần tử. Điều này có thể được thực hiện bằng các phương tiện tích hợp của ngôn ngữ lập trình mà chương trình được viết, hoặc sử dụng một giao diện đặc biệt của hệ điều hành. Một giao diện như vậy nhằm mục đích tương tác của các chương trình ứng dụng với các chương trình hệ thống và được gọi là API - Giao diện lập trình ứng dụng.
Hướng dẫn
Bước 1
Tìm hiểu xem ngôn ngữ bạn đang sử dụng để viết chương trình hoặc tập lệnh có mô phỏng tổ hợp phím tích hợp hay không. Ví dụ, trong JavaScript, nút chuột trái được mô phỏng bằng cách sử dụng một phương pháp được liên kết với các phần tử cụ thể của giao diện người dùng. Ví dụ: để mô phỏng thao tác nhấn nút chuột trái trong khi con trỏ ở trên một nút có tên autoClkButton được đặt trong một biểu mẫu có tên autoClkForm, bạn cần sử dụng cấu trúc document.autoClkButton.autoClkForm.click (). Trong ngôn ngữ này, không chỉ các nút (nút, đặt lại, gửi) có thuộc tính click () mà còn có các phần tử chọn - hộp kiểm và radio.
Bước 2
Sử dụng hàm keybd_event bên ngoài nếu ngôn ngữ bạn đang sử dụng không có các công cụ tích hợp mà bạn cần để thực hiện mọi thứ tự động. Đây là một hàm API của Win32, vì vậy để có thể truy cập chúng từ chương trình của bạn, bạn nên đặt một khối ở đầu mã nhập các hàm của thư viện bên ngoài. Điều này cần được thực hiện theo cú pháp của môi trường phần mềm được sử dụng. Ví dụ: trong ngôn ngữ lập trình đầu cuối MQL (MetaQuotes Language) cho giao dịch chứng khoán, để gọi các hàm được đặt trong thư viện hệ thống user32.dll, bạn nên đặt các dòng sau ở đầu mã: #import "user32.dll" bool keybd_event (int bVk, int bScan); #import Sau đó, có thể sử dụng hàm keybd_event được khai báo trong khối nhập.
Bước 3
Keybd_event có bốn tham số. Đầu tiên (bVk, kiểu dữ liệu BYTE) có thể nhận một trong 255 giá trị và cho biết phím sẽ được mô phỏng khi được nhấn. Tìm hiểu giá trị nào trong số những giá trị này được gán cho khóa bạn cần trên trang này - https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx. Tham số thứ hai (bScan, loại BYTE) là "mã quét" được tạo ra khi nhấn phím đã chọn. Thứ ba (dwFlags, loại DWORD) có thể nhận một hoặc cả hai giá trị được cung cấp của nó (KEYEVENTF_EXTENDEDKEY và KEYEVENTF_KEYUP). Mã đầu tiên cho biết rằng một mã phím mở rộng sẽ được tạo và mã thứ hai cho biết rằng nút đã được nhấn và sau đó được thả ra. Tham số thứ tư (dwExtraInfo, kiểu ULONG_PTR) có thể chứa các cờ bổ sung cụ thể cho từng khóa.