Angepinnt [SAMMELTHREAD] Nützliche AHK-Codeschnipsel

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

Es gibt Neuigkeiten! Ab sofort könnt ihr dem Donators Club auf Lebenszeit beitreten.
Weitere Infos im Thema Donator's Club ab heute wieder verfügbar!

  • [SAMMELTHREAD] Nützliche AHK-Codeschnipsel

    Hallo,
    dieses Thema ist dafür da, damit ihr eure eigenen AHK- Codeschnipsel vorstellt.
    Damit andere Leute daraus lernen können oder es auch erweitern können.

    Ich fang mal einfach mit einigen an:

    kleines Passwort System

    Quellcode: kleines Passwort System

    1. //oben im Script einfügen: password = breadfish123
    2. InputBox,pass,Login, Bitte gebe den Passwort ein
    3. If( pass <> password ) {
    4. MsgBox Passwort falsch - Zugriff verweigert!
    5. ExitApp
    6. }
    7. MsgBox Passwort korrekt - Zugriff erfolgreich!


    Taschenrechner System (zusammen Arbeit mit einem Freund) (Benötigt wird eine API)

    Quellcode: Taschenrechner System (zusammen Arbeit mit einem Freund)

    1. :?:/rechnen::
    2. Suspend Permit
    3. {
    4. Zahl1 := PlayerInput("Zahl 1: ")
    5. Aktion := PlayerInput("Aktion: ")
    6. Zahl2 := PlayerInput("Zahl 2: ")
    7. if (Aktion = "+")
    8. {
    9. StringSplit, calc, Aktion, +
    10. calcresult := Round(Zahl1 + Zahl2, 3)
    11. }
    12. if (Aktion = "-")
    13. {
    14. StringSplit, calc, Aktion, -
    15. calcresult := Round(Zahl1 - Zahl2, 3)
    16. }
    17. if (Aktion = "*")
    18. {
    19. StringSplit, calc, Aktion, *
    20. calcresult := Round(Zahl1 * Zahl2, 3)
    21. }
    22. if (Aktion = "/")
    23. {
    24. StringSplit, calc, Aktion, /
    25. calcresult := Round(Zahl1 / Zahl2, 3)
    26. }
    27. addChatMessage("{0078ff}[Keybinder]{CCCCCC}Das Ergebnis lautet: {01DF01}" . calcresult . "")
    28. }
    29. return
    Alles anzeigen

    Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von Abbas ()

  • Hier eine Whitelist.

    Erklärt sich eig selbst.

    einfach auf der Webspace in die .txt Dateien alle namen reinschreiben untereinander ist besser.

    Quellcode

    1. Whitelist:
    2. if (WinExist("GTA:SA:MP") && WinActive("GTA:SA:MP"))
    3. {
    4. uName =: getUsername()
    5. CheckWhitelist := DownloadToString("http://Meine-Seite.de/keybinder/whitelist.txt")
    6. IfNotInString, CheckWhitelist, %uName%
    7. {
    8. AddChatMessage("{4221D6}|| Keybinder ||{818181} Login Prozess{4221D6} fehlgeschlagen,")
    9. AddChatMessage("{4221D6}|| Keybinder ||{818181} Du stehst {4221D6}NICHT{818181} auf der Whitelist.")
    10. AddChatMessage("{4221D6}|| Keybinder ||{818181} Du kannst dich im Forum im dazugehörigen Thread eintragen lassen.")
    11. ExitApp
    12. }
    13. }
    14. return
    Alles anzeigen
    Hier noch ein Find BOT von mir war für LÜD

    C-Quellcode

    1. if not A_IsAdmin
    2. {
    3. Run *RunAs "%A_ScriptFullPath%"
    4. ExitApp
    5. }
    6. #Warn
    7. #UseHook
    8. #NoEnv
    9. #SingleInstance force
    10. #include %A_ScriptDir%\SAMP.ahk // Das ist die API die ich nutzt weis gerade net welche das es wenn es bei euch net geht musst ihr die sachen ersetzen:D
    11. Hotkey, Enter, Off
    12. Hotkey, Escape, Off
    13. return
    14. +T::
    15. ~t::
    16. Suspend On
    17. Hotkey, Enter, On
    18. Hotkey, Escape, On
    19. Hotkey, t, Off
    20. return
    21. ~NumpadEnter::
    22. ~Enter::
    23. Suspend Permit
    24. Suspend Off
    25. Hotkey, t, On
    26. Hotkey, Enter, Off
    27. Hotkey, Escape, Off
    28. return
    29. ~Escape::
    30. Suspend Permit
    31. Suspend Off
    32. Hotkey, t, On
    33. Hotkey, Enter, Off
    34. Hotkey, Escape, Off
    35. return
    36. ;#########################################################################################################
    37. :?:/af::
    38. Suspend Permit
    39. KundeID := -1
    40. KundeName := "ERROR"
    41. Kunde := Playerinput("Gib die ID ein: ")
    42. if Kunde is Integer
    43. {
    44. getPlayerNameById(Kunde)
    45. KundeID := Kunde
    46. }
    47. if Kunde is not Integer
    48. {
    49. KundeID := GetPlayerIdByName(Kunde)
    50. KundeName := Kunde
    51. }
    52. if( KundeID < 0 || KundeID > 250 || Kunde == -1 ){
    53. return
    54. }
    55. afind := true
    56. SetTimer, Find, 4000 //4000 MS = 4 SEK
    57. AddChatMessage("{0088cc}[Find - BOT]{FFFFFF} Automatisches finden gestartet. Zum beenden{2090B3} < {FFFFFF} drücken.")
    58. Find:
    59. SendChat("/Befehl zum Finden " KundeID "")
    60. CZP := getPlayerZone()
    61. CCP := getPlayerCity()
    62. AddChatMessage("{0088cc}[Find - BOT]{FFFFFF} User: " Kunde " wurde geortet")
    63. Sleep 100
    64. Suspend Off
    65. return
    66. ~<::
    67. if(isInChat() || (A_IsSuspended))
    68. return
    69. SetTimer, Find, Off
    70. afind := false
    71. AddChatMessage("{0088cc}[Find - BOT]{FFFFFF} Automatisches finden beendet.")
    72. return
    73. PlayerInput(text){
    74. s := A_IsSuspended
    75. Suspend On
    76. KeyWait Enter
    77. SendInput t^a{backspace}%text%
    78. Input, var, v, {enter}
    79. SendInput ^a{backspace 100}{enter}
    80. Sleep, 20
    81. if(!s)
    82. Suspend Off
    83. return var
    84. }
    Alles anzeigen

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von iTsRooT ()

  • Beachten solltet ihr hier bei das eine Webspace benötigt wird, um mit FileZilla halt die Exe und die TXD Datei hochzuladen und die HTTP Links in den Script einzufügen.
    Damit der Keybinder dann von der Webspace aus die neue Exe Version downloaden kann.

    INFO: Nach jeden neuem Update, AHK Code Compilen mit FileZilla in die Wepspace wo die TXD und die veraltete Exe ist rein gehen.
    Und die alte Exe löschen und mit der neuen ersetzten. Und wichtig ist pro neuen Update bei der TXD Datei von 0 auf 1 zusetzten und auch im Script wo " Version = 0 " steht eine 1 aus der 0 zu machen. Und immer weiter und weiter mit den zahlen wenn ihr immer Updates raus bringt.

    Quellcode

    1. Version = 0
    2. IfExist update.batx
    3. {
    4. FileDelete update.bat
    5. }
    6. IfExist Keybat1.bat
    7. {
    8. FileDelete Keybat1.bat
    9. }
    10. UrlDownloadToFile HTTP DER VERSION.TXT, version.txt
    11. FileRead, NewestVersion, version.txt
    12. FileDelete version.txt
    13. if(NewestVersion > Version)
    14. {
    15. MsgBox, 4,, Die neue Version %NewestVersion% ist verfügbar.`nMöchtest du den Keybinder aktualisieren?
    16. IfMsgBox, YES
    17. {
    18. UrlDownloadToFile HTTP DER Update EXE. Datei vom Keybinder, %A_ScriptName%.new
    19. UpdateBat=
    20. (
    21. Del "%A_ScriptName%"
    22. Rename "%A_ScriptName%.new" "%A_ScriptName%"
    23. "%A_ScriptName%"
    24. )
    25. FileAppend, %UpdateBat%, update.bat
    26. Run, update.bat,,hide
    27. ExitApp
    28. }
    29. }
    Alles anzeigen
  • YaReZ schrieb:

    Hau mal bitte einen decompiler Schutz für die 0815 decompiler raus ^^
    Da dir ein Decompiler Schutz nicht viel bringen wird würde ich dir empfehlen deinen Script zu obfuscieren also es so schreiben, dass es sehr schwierig zu verstehen ist.
    Es gibt ein Programm dafür was das automatisch für dich macht.
    github.com/davidmalia/autohotkey-obfuscator

    Aber wenn du wirklich einen Anti Decompiler haben willst was 0815 Decompiler fernhält würde ich dir die UPX / MPress Gui empfehlen .
    autoitscript.com/forum/topic/138385-upx-mpress-gui/

    mfg

    Beitrag von iTsRooT ()

    Dieser Beitrag wurde von Canna aus folgendem Grund gelöscht: Falscher Bereich/Thema ().
  • iTsRooT schrieb:

    Hier eine Whitelist.

    Erklärt sich eig selbst.

    einfach auf der Webspace in die .txt Dateien alle namen reinschreiben untereinander ist besser.

    Quellcode

    1. Whitelist:
    2. if (WinExist("GTA:SA:MP") && WinActive("GTA:SA:MP"))
    3. {
    4. uName =: getUsername()
    5. CheckWhitelist := DownloadToString("http://Meine-Seite.de/keybinder/whitelist.txt")
    6. IfNotInString, CheckWhitelist, %uName%
    7. {
    8. AddChatMessage("{4221D6}|| Keybinder ||{818181} Login Prozess{4221D6} fehlgeschlagen,")
    9. AddChatMessage("{4221D6}|| Keybinder ||{818181} Du stehst {4221D6}NICHT{818181} auf der Whitelist.")
    10. AddChatMessage("{4221D6}|| Keybinder ||{818181} Du kannst dich im Forum im dazugehörigen Thread eintragen lassen.")
    11. ExitApp
    12. }
    13. }
    14. return
    Alles anzeigen
    Bei mir kommt immer der Fehler: ==> Call to nonexistent function.
    Vielleicht kann mir jemand helfen :D