Ich habe ein Stück Code geschrieben, um Mausklick zu simulieren, der in meinem Vista funktioniert. Aber wenn ich das in Windows 7 getestet habe, erzeugt es das Klickereignis nicht. Könnte jemand bitte helfen? Ich füge das unten stehende Code-Snippet hinzu. Danke, NikilSimulieren Mausklick und Mausbewegung in Windows 7 mit C#
[DllImport("user32.dll")]
static extern void mouse_event(int dwFlags, int dx, int dy, int dwData, int dwExtraInfo);
[Flags]
public enum MouseEventFlags
{
LEFTDOWN = 0x00000002,
LEFTUP = 0x00000004,
MIDDLEDOWN = 0x00000020,
MIDDLEUP = 0x00000040,
MOVE = 0x00000001,
ABSOLUTE = 0x00008000,
RIGHTDOWN = 0x00000008,
RIGHTUP = 0x00000010
}
System.Windows.Forms.Cursor.Hide();
System.Windows.Forms.Cursor.Position = new System.Drawing.Point(xinc + rct.Left, yinc + rct.Top);
int X = System.Windows.Forms.Cursor.Position.X;
int y = System.Windows.Forms.Cursor.Position.Y;
mouse_event((int)(MouseEventFlags.LEFTDOWN), 0, 0, 0, 0);
mouse_event((int)(MouseEventFlags.LEFTUP), 0, 0, 0, 0);
System.Windows.Forms.Cursor.Position = new System.Drawing.Point(0, 0);
System.Windows.Forms.Cursor.Show();
mouse_event wurde vollständig von SendInput ersetzt. Funktioniert Ihr Code, wenn er auf SendInput aktualisiert wurde? – Michael
@Michael: HI Könnten Sie bitte ein Beispiel oder einen Link angeben, um die send-Eingabe in C# zu verwenden? – Nikil