So simulieren Sie das Drücken einer Hardware-TastaturC#

Ein Treffpunkt für C#-Programmierer
Anonymous
 So simulieren Sie das Drücken einer Hardware-Tastatur

Post by Anonymous »

Ich versuche, im Task-Manager die Abwärtspfeiltaste zu drücken, aber es funktioniert einfach nicht. Ich programmiere übrigens in C#. Gibt es eine Möglichkeit, dies nativ in meiner Sprache zu tun? Ich habe viele verschiedene Tastatursimulationsmethoden wie keybd_event ausprobiert.
Der Abwärtspfeil funktioniert so, wie wenn ich ihn auf meiner Tastatur drücke

Code: Select all

using System;
using System.Diagnostics;
using System.Runtime.InteropServices;

class Program
{
// Importing keybd_event from user32.dll
[DllImport("user32.dll", CharSet = CharSet.Auto, SetLastError = true)]
public static extern void keybd_event(byte bVk, byte bScan, uint dwFlags, int dwExtraInfo);

[DllImport("user32.dll", SetLastError = true, CharSet = CharSet.Auto)]
public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

[DllImport("user32.dll", SetLastError = true)]
public static extern IntPtr SetForegroundWindow(IntPtr hWnd);

// Virtual key codes
const byte VK_CONTROL = 0x11;
const byte VK_SHIFT = 0x10;
const byte VK_ESCAPE = 0x1B;

// Key event flags
const uint KEYEVENTF_KEYDOWN = 0x0000;
const uint KEYEVENTF_KEYUP = 0x0002;

static void Main()
{
// Open Task Manager
OpenTaskManager();
}

static void OpenTaskManager()
{

keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYDOWN, 0); // push
keybd_event(VK_SHIFT, 0, KEYEVENTF_KEYDOWN, 0);
keybd_event(VK_ESCAPE, 0, KEYEVENTF_KEYDOWN, 0);

keybd_event(VK_ESCAPE, 0, KEYEVENTF_KEYUP, 0); // release
keybd_event(VK_SHIFT, 0, KEYEVENTF_KEYUP, 0);
keybd_event(VK_CONTROL, 0, KEYEVENTF_KEYUP, 0);
}
}

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post