Bir Fare Nasıl Taklit Edilir

İçindekiler:

Bir Fare Nasıl Taklit Edilir
Bir Fare Nasıl Taklit Edilir

Video: Bir Fare Nasıl Taklit Edilir

Video: Bir Fare Nasıl Taklit Edilir
Video: Bir Çay Poşeti Kullanın Ve Bir Daha Asla Evinizde Örümcek veya Fare Görmeyeceksiniz! 2024, Mayıs
Anonim

"Fare" türünde bir manipülatör, herhangi bir bilgisayarın gerekli bir özelliğidir. Onsuz, uygulamalar arasında kontrol veya gezinmeyi hayal etmek imkansızdır. Bu manipülatör, eylemlerini (hareketler, tıklamalar, kaydırma) ekranda görüntüleyerek kullanıcı ile aktif olarak etkileşime girer. Bazı programlama görevleri için yazılım fare emülasyonu gerekebilir.

Bir fare nasıl taklit edilir
Bir fare nasıl taklit edilir

Bu gerekli

Microsoft Visual C ++. Net geliştirme ortamı (2003'ten daha düşük değil)

Talimatlar

Aşama 1

Microsoft Visual C ++. Net'i (2003 veya üstü) yükleyin. Bu geliştirme ortamının çeşitli sürümleri vardır - ücretli ve ücretsiz. Geliştiricinin web sitesinden indirilebilirler. Kurulumdan sonra yeni bir proje oluşturun ve System. Windows. Forms ve System. Drawing'i aşağıda gösterildiği gibi bağlayın: System. Windows. Forms kullanarak; System. Drawing kullanarak;

Adım 2

Windows işletim sistemlerinde fareyi ekran üzerinde hareket ettirmek için, imlecin ekrandaki konumunu doğrudan ayarlayan işlevleri kullanın. Örneğin, aşağıdaki kodu kullanın: Cursor. Position = new Point (x, y); Bu satır, imleci Point (x, y) sınıfının yapıcısında belirtilen konuma hareket ettirecektir (burada x ve y, imlecin yerleştirilmesi gereken konumun koordinatları) … İmleç konumunu tekrar tekrar ayarlamanız gerekiyorsa, Point sınıfının bir örneğini oluşturun ve bunun için koordinatları değiştirme yöntemini kullanın. Bu hafızadan tasarruf sağlayacaktır: Nokta noktası = yeni Nokta (0, 0); İmleç. Konum = nokta. Ofset (20, 100); İmleç. Konum = nokta. Ofset (40, -20); Bu kod, 0, 0 koordinatlarına sahip Point () sınıfı bir nesne oluşturur. İkinci satır, Noktayı X'te 20 piksel ve Y'de 100 piksel kaydırır. Nokta nesnesi tarafından işaret edilen geçerli koordinat 20, 100'dür. Üçüncü satır yine belirtilen piksel sayısı kadar Kaydırma Noktası olur (sırasıyla 40 ve -20). Geçerli koordinat X'te 60 (20 + 40) ve Y'de 80 (100-20)'dir.

Aşama 3

Fare tıklamasını taklit etmek için Win32 SendInput () veya mouse_event () işlevlerini kullanın. Örneğin, sağ tıklamayı programlı olarak simüle etmek için aşağıdaki kodu kullanın: // import mouse_event (): [DllImport ("User32.dll")] static extern void mouse_event (MouseFlags dwFlags, int dx, int dy, int dwData, UIntPtr dwExtraInfo); // kullanım kolaylığı için, gerekli sabitlerle (bayraklar) // fare eylemlerini tanımlayan bir numaralandırma oluşturun: [Flags] enum MouseFlags {Move = 0x0001, LeftDown = 0x0002, LeftUp = 0x0004, RightDown = 0x0008, RightUp = 0x0010, Mutlak = 0x8000 }; // kullan - aşağıdaki koordinatlara tıklayın: const int x = 39000; // Xconst'a göre koordinatlar int y = 12000; // koordinatları Ymouse_event (MouseFlags. Absolute | MouseFlags. Move, x, y, 0, UIntPtr. Zero); mouse_event (MouseFlags. Absolute | MouseFlags. RightDown, x, y, 0, UIntPtr. Zero); mouse_event (MouseFlags. Mutlak | MouseFlags. RightUp, x, y, 0, UIntPtr. Zero);

4. Adım

Win API SendMessage () işlevini kullanarak WM_LBUTTONDOWN ve WM_LBUTTONUP mesajları göndererek bir fare tıklamasını taklit edin. Örneğin, aşağıda gösterildiği gibi: void OnBtPerformClick (object sender, EventArgs e) {SendMessage (btDemo. Handle, Messages. WM_LBUTTONDOWN, MK_LBUTTON, IntPtr. Zero); SendMessage (btDemo. Handle, Messages. WM_LBUTONUP,} MKPTONUP

Önerilen: