Wie kann ich mit C# makros machen?
Z.B ich will ALT GR drücken und dann drückt mein programmiertes Programm die Tasten 331 !
3 Antworten
Willst du Macros für Visual Studio erstellen, wenn ja dann läuft das nicht mit C#.
Nähere Infos zu den Macros findest du hier:
https://msdn.microsoft.com/de-de/library/b4c73967(v=vs.90).aspx
Oder willst du ein C# Programm schreiben dass beim Drücken von ALT GR das drücken von 331 auf der Tastatur simuliert?
Dann kannst du mal das verwenden:
https://msdn.microsoft.com/de-de/library/ms171548(v=vs.110).aspx
und das:
https://msdn.microsoft.com/de-de/library/ms171538(v=vs.110).aspx
Das Problem dabei ist aber dass dein Programm zum abfangen des Tastendruckes den fokus haben muss.
Tastatureingaben generell abfangen ist schwer wenn du nicht auf Treiberebene arbeitest. Du kannst dann nur so etwas ähnliches wie einen Keylogger programmieren, allerdings wirst du dann eventuell Probleme mit dem Virenschutz bekommen.
Ich möchte ja mein Fokus nicht drauf haben. Ob mein Viren programm mir was sagt, ist mir egal, dann füge ich es zur Blacklist hinzu
Dann kannst du mit dem beginnen:
http://null-byte.wonderhowto.com/how-to/create-simple-hidden-console-keylogger-c-sharp-0132757/
aber die Keys werden dadurch nicht abgefangen, das bedeutet der Tastendruck Alt Gr kommt immer noch durch und danach kommen die Keys die von deinem Programm simuliert werden.
GetAsyncKeyState:
http://www.pinvoke.net/default.aspx/user32.getasynckeystate
SendMessage:
http://www.pinvoke.net/default.aspx/user32.sendmessage
Dann brauchst du keine Formevents die afaik auch nur gecalled werden, solange die Form aktiv ist. Dafür müsstest du dann ein Overlay erstellen.
Du brauchst einen global keyboard hook.
1. Ich kenne mich NUR mit Java aus. 2. Ich habe keine Ahnung von C#, denn ich habe es gestern installiert 3. Wäre nett, wenn ich ein fertiges Code bekomme
Dann schreib dein Programm mit Java. Wenn du schon etwas haben willst, dann tu' auch 'was dafür. Es gibt sicherlich genug fertige Codebeispiele im Internet, wenn du mal danach suchen würdest.
Ja ich will ein C# programm schreiben.