Bəzən bir ssenarinin və ya proqramın ssenarisi bəzi istifadəçi hərəkətlərinin təqlid edilməsini tələb edir - məsələn, bir düyməyə basmaq və ya elementə siçan vurmaqla. Bunu ya proqramın yazıldığı proqramlaşdırma dilinin daxili vasitələri ilə, ya da əməliyyat sisteminin xüsusi bir interfeysi ilə həyata keçirmək olar. Belə bir interfeys tətbiq proqramlarının sistem proqramları ilə qarşılıqlı əlaqəsi üçün nəzərdə tutulub və API - Tətbiq Proqramlaşdırma İnterfeysləri adlanır.
Təlimat
Addım 1
Proqramı və ya ssenarini yazmaq üçün istifadə etdiyiniz dilin daxili vuruş emulyasiyasına sahib olub olmadığını öyrənin. Məsələn, JavaScript-də siçanın sol düyməsini istifadəçi interfeysinin müəyyən elementlərinə bağlı bir metoddan istifadə edərək simulyasiya olunur. Məsələn, kursor autoClkForm adlı formada yerləşdirilmiş autoClkButton adlı bir düymənin üzərində olarkən sol siçan düyməsini basmaq üçün, document.autoClkButton.autoClkForm.click () construct-dan istifadə etməlisiniz. Bu dildə yalnız düymələr (düymə, sıfırlama, təqdim etmə) bir klik () xüsusiyyətinə sahib deyil, həm də elementləri seçmə qutusu və radio.
Addım 2
İstifadə etdiyiniz dildə hər şeyi avtomatik olaraq yerinə yetirməyiniz üçün quraşdırılmış alətlər yoxdursa, xarici keybd_event funksiyasından istifadə edin. Bu bir Win32 API funksiyasıdır, buna görə proqramınıza daxil olmaq üçün kodunuzun əvvəlinə xarici kitabxananın funksiyalarını idxal edən bir blok qoymalısınız. Bu istifadə olunan proqram mühitinin sintaksisinə uyğun olaraq edilməlidir. Məsələn, birja ticarəti üçün MQL (MetaQuotes Language) terminal proqramlaşdırma dilində user32.dll sistem kitabxanasında yerləşdirilmiş funksiyaları çağırmaq üçün kodun əvvəlinə aşağıdakı sətirləri yerləşdirməlisiniz: #import "user32.dll" bool keybd_event (int bVk, int bScan); #import Bundan sonra, idxal blokunda elan edilmiş keybd_event funksiyasından istifadə etmək mümkün olacaq.
Addım 3
Keybd_event dörd parametrə malikdir. Birincisi (bVk, BYTE məlumat növü) 255 dəyərdən birini götürə bilər və basıldıqda simulyasiya ediləcək açarı göstərir. Bu dəyərlərdən hansının bu səhifədə sizə lazım olan açara təyin olunduğunu öyrənin - https://msdn.microsoft.com/en-us/library/windows/desktop/dd375731(v=vs.85).aspx. İkinci parametr (bScan, BYTE növü) seçilmiş düyməyə basıldıqda əmələ gələn "tarama kodu" dur. Üçüncüsü (dwFlags, DWORD növü) təmin edilmiş dəyərlərdən birini və ya hər ikisini götürə bilər (KEYEVENTF_EXTENDEDKEY və KEYEVENTF_KEYUP). Birincisi, genişləndirilmiş bir açar kodun yaradılacağını, ikincisi isə düymənin basıldığını və sonra sərbəst buraxıldığını göstərir. Dördüncü parametr (dwExtraInfo, növü ULONG_PTR) hər düyməyə xas olan əlavə bayraqlar içərə bilər.