C# klavye kısayolu gönderme

Arkaplanda çalışan bir c# klavye kısayolu gönderme uygulaması için gerekli kod lazım olur diye bulunsun.

statik sınıfı sayfaya çağırıyoruz.

  static class KeyboardSend
    {
        [DllImport("user32.dll")]
        private static extern void keybd_event(byte bVk, byte bScan, int dwFlags, int dwExtraInfo);

        private const int KEYEVENTF_EXTENDEDKEY = 1;
        private const int KEYEVENTF_KEYUP = 2;

        public static void KeyDown(Keys vKey)
        {
            keybd_event((byte)vKey, 0, KEYEVENTF_EXTENDEDKEY, 0);
        }

        public static void KeyUp(Keys vKey)
        {
            keybd_event((byte)vKey, 0, KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP, 0);
        }
    }

Statik sınıf içerisinden KeyDown ve KeyUp fonksiyonlarını çağırıyoruz.

[vurgula renk=”kırmızı”]KeyDown fonksiyonundan sonra KeyUp muhakkak çağrılmalı. Aksi halde tuş basılı kalacaktır.[/vurgula]

KeyboardSend.KeyDown(Keys.LWin);
KeyboardSend.KeyDown(Keys.D);

KeyboardSend.KeyUp(Keys.LWin);
KeyboardSend.KeyUp(Keys.D);

Yukarıdaki çrnekte Windows key + D kısayolu gönderdik. Masaüstünü Göster komutu.

Oyunlar için arkaplanda çalışan trainer bu şekilde geliştirilebilir.

Kolay gelsin.

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir