Trainer (oder so) erstellen ?

  • VB.NET

Es gibt 12 Antworten in diesem Thema. Der letzte Beitrag () ist von thefiloe.

    Trainer (oder so) erstellen ?

    Vorab : Sorry, fals es der falsche Bereich ist.
    Vorab2 : Es ist nichts illegales ! Wille keine Craks etc. programmieren

    Möchte nur fragen ob es möglich ist, das wenn ich z.B STRG und 1 drücke er ,,Aspirine,, in die Tastatur schreibt.
    Soll ein Cheat Trainer werden. Damit ich nicht alles händisch eingeben muss.

    Geht das mit VB ?

    Gruß
    Vielleicht soetwas,

    VB.NET-Quellcode

    1. Public Class Form1
    2. Private Declare Function SetForegroundWindow Lib "user32" (ByVal hwnd As IntPtr) As Integer
    3. Private Declare Function GetForegroundWindow Lib "user32" () As Integer
    4. Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hwnd As IntPtr, ByRef lpdwProcessId As Integer) As Integer
    5. Private Const WM_SETFOCUS As Int32 = &H7
    6. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    7. Process.Start("notepad.exe")
    8. End Sub
    9. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    10. Dim p As Process = Process.GetProcessesByName("Notepad")(0)
    11. Clipboard.SetText(Me.TextBox1.Text)
    12. Me.Text = "in den vordergrundbringen"
    13. SetForegroundWindowEx(p.MainWindowHandle)
    14. Me.Text = "text senden"
    15. SendKeys.SendWait("^v")
    16. End Sub
    17. 'quelle: http://www.microsoft.com/germany/msdn/library/visualtools/vb6/FensterInDenDesktopVordergrundBringen.mspx?mfr=true
    18. ' Verwenden Sie die Funktion SetForegroundWindowEx statt der
    19. ' API Funktion SetForegroundWindow ausschließlich, wenn das
    20. ' betroffene Fenster tatsächlich in den Vordergrund gebracht
    21. ' werden muss.
    22. Private Function SetForegroundWindowEx(ByVal hWndWindow As Long) As Boolean
    23. ' Dient dem Setzen des Vordergrundfensters mit der Funktion
    24. ' SetForegroundWindow, die sich unter neueren Windows-Versionen
    25. ' anders verhält als unter Windows 95 und Windows NT 4.0.
    26. ' Der Rückgabewert ist True, wenn das Fenster erfolgreich in den
    27. ' Vordergrund gebracht werden konnte.
    28. Dim lThreadForeWin As Long ' Thread-ID für das aktuelle Vordergrundfenster
    29. Dim lThreadWindow As Long ' Thread-ID für das in hWndWindow spezifizierte
    30. ' Fenster, das in den Vordergrund des Desktops
    31. ' gebracht werden soll.
    32. ' Falls das Fenster dem gleichen Thread wie das aktuelle
    33. ' Vordergrundfenster angehört, ist kein Workaround erforderlich:
    34. lThreadWindow = GetWindowThreadProcessId(hWndWindow, 0)
    35. lThreadForeWin = GetWindowThreadProcessId(GetForegroundWindow(), 0)
    36. If lThreadWindow = lThreadForeWin Then
    37. ' Vordergrundfenster und zu aktivierendes Fenster gehören zum
    38. ' gleichen Thread. SteForegroundWindow allein reicht aus:
    39. SetForegroundWindowEx = CBool(SetForegroundWindow(hWndWindow))
    40. Else
    41. ' Das Vordergrundfenster gehört zu einem anderen Thread als das
    42. ' Fenster, das neues Vordergrundfenster werden soll. Mittels
    43. ' AttachThreadInput erhaten wir kurzzeitig Zugriff auf die
    44. ' Eingabeverarbeitung des Threads des Vordergrundfensters,
    45. ' so dass SetForegroundWindow wie erwartet arbeitet:
    46. SetForegroundWindowEx = CBool(SetForegroundWindow(hWndWindow))
    47. End If
    48. End Function
    49. End Class


    Mit diesem, wird der eingegebene Text, dem vordefinierten Prozess übergeben...

    Code war denk ich aus dem Forum...

    Mfg.eniking1998

    Kimo_13 schrieb:

    Ne, das geht auch wenn das Spiel nicht läuft.

    Dann überprüf ob das Spiel läuft und gib die Funktion nur dann frei :)

    VB.NET-Quellcode

    1. Option Strict On
    2. Public Class Form1
    3. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    4. If CheckProcess("chrome") Then
    5. MessageBox.Show("Läuft :)")
    6. Else
    7. MessageBox.Show("Läuft nicht ! :(")
    8. End If
    9. End Sub
    10. Public Function CheckProcess(ByVal pname As String) As Boolean
    11. For Each p As Process In Process.GetProcesses()
    12. If p.ProcessName = pname Then
    13. Return True
    14. End If
    15. Next
    16. Return False
    17. End Function
    18. End Class
    Hotkey:
    social.msdn.microsoft.com/Foru…4-4adc-9d85-416a7158c6ba/

    Cheat eingeben:

    VB.NET-Quellcode

    1. sendkeys.send("{enter}")
    2. sendkeys.send("test")
    3. sendkeys.send("{enter}")


    Wenn es aber ein DirectX-Spiel o.Ä.(?) ist, funktioniert sendkeys nicht. Da musst du dann kompliziert directX-Funktionen hooken?!
    Für ein Mindestmaß an Rechtschreibung, Interpunktion und Majuskeln!
    Da hast du recht. Aber mit der SendInput Funktion sollte es angeblich gehen: codeproject.com/Questions/2796…harp-DirectInput-Send-Key


    Opensource Audio-Bibliothek auf github: KLICK, im Showroom oder auf NuGet.