|
You last visited: Today at 07:12
Advertisement
Debuggen
Discussion on Debuggen within the AutoIt forum part of the Coders Den category.
06/11/2010, 17:51
|
#1
|
elite*gold: 0
Join Date: Jul 2009
Posts: 2,241
Received Thanks: 848
|
Debuggen
So, wie, wo, was?
Ich hab erfahren das es möglich ist, nur nicht wie xD
So denn, kann man das mit Standart-Funktionen lösen oder gibts ne UDf.
Am besten wäre n kleines Tut, oder n paar hingeklatschte Snippets zum analysieren^^
|
|
|
06/11/2010, 17:57
|
#2
|
elite*gold: 1
Join Date: Feb 2009
Posts: 1,726
Received Thanks: 729
|
Es gibt i.wo im Internet ein Programm, aber ich weiß gerade nicht wo man downloaden kann.
|
|
|
06/11/2010, 18:05
|
#3
|
elite*gold: 0
Join Date: Jul 2009
Posts: 2,241
Received Thanks: 848
|
Quote:
Originally Posted by HardCore.1337
Es gibt i.wo im Internet ein Programm, aber ich weiß gerade nicht wo man downloaden kann.
|
Was will ich mit nem Download? Selbst ist der Mann (oder Frau, manchmal nicht erkenntlich)!
|
|
|
06/11/2010, 21:33
|
#4
|
elite*gold: 0
Join Date: Nov 2007
Posts: 32
Received Thanks: 30
|
Mhh... setz einfach nach jedem Befehl in Autoit ein
PHP Code:
If @Error Then _FileWriteLog(@ScriptDir & '\error.log', "Error #" & String(@error) & " in Zeile #"String(@ScriptLineNumber-1) & "! Extended: " & String(@extended))
und schon haste den perfekten @Error-Logger ^^ das klappt natürlich nur, wenn du sauber programmiert hast und nicht son schwachsin wie das hier gemacht hast:
PHP Code:
Local $aArray[2] MsgBox(0, "", $aArray[99])
^^
Aber dafür habe ich natürlich auch ne kleines Script... funktioniert per stdoutread:
PHP Code:
Func _AutoItErrorHandler() If StringInStr($CmdLineRaw, "/AutoIt3ExecuteScript") Then Return Local $sErrorMsg = "" Local $sRunLine = @AutoItExe & ' /ErrorStdOut /AutoIt3ExecuteScript "' & @ScriptFullPath & '"' Local $iPID = Run($sRunLine, @ScriptDir, 0, 2 + 4) ProcessWait($iPID) While 1 $sErrorMsg &= StdoutRead($iPID) If @error Then ExitLoop
Sleep(1) WEnd If $sErrorMsg = "" Then Exit MsgBox(262144+48, "AutoIt3 Error Message", _ StringFormat("Program Terminated <%s>.\n\nError Message:\n\n%s\n\n" & _ "Please report about this bug to the author, sorry for the inconvenience! :( ", @ScriptName, $sErrorMsg)) Exit EndFunc
Einfach beim start callen...
PHP Code:
#NoTrayIcon #Region ;**** Directives created by AutoIt3Wrapper_GUI **** #AutoIt3Wrapper_Run_AU3Check=n #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
_AutoItErrorHandler()
MsgBox(0,"","")
MsgBox(0, "" ;This is meant to produce an error !
Func _AutoItErrorHandler() If StringInStr($CmdLineRaw, "/AutoIt3ExecuteScript") Then Return Local $sErrorMsg = "" Local $sRunLine = @AutoItExe & ' /ErrorStdOut /AutoIt3ExecuteScript "' & @ScriptFullPath & '"' Local $iPID = Run($sRunLine, @ScriptDir, 0, 2 + 4) ProcessWait($iPID) While 1 $sErrorMsg &= StdoutRead($iPID) If @error Then ExitLoop
Sleep(1) WEnd If $sErrorMsg = "" Then Exit MsgBox(262144+48, "AutoIt3 Error Message", _ StringFormat("Program Terminated <%s>.\n\nError Message:\n\n%s\n\n" & _ "Please report about this bug to the author, sorry for the inconvenience! :( ", @ScriptName, $sErrorMsg)) Exit EndFunc
MfG
|
|
|
06/11/2010, 22:37
|
#5
|
elite*gold: 20
Join Date: Feb 2007
Posts: 3,080
Received Thanks: 4,294
|
msgbox, tooltip, consolewrite, mehr braucht man für autoit nicht!
|
|
|
06/11/2010, 23:04
|
#6
|
elite*gold: 0
Join Date: Jul 2009
Posts: 2,241
Received Thanks: 848
|
Quote:
Originally Posted by kknb
msgbox, tooltip, consolewrite, mehr braucht man für autoit nicht!
|
Zum debuggen hm? Ich rede von Debuggern wie ollydbg etc.^^
|
|
|
06/11/2010, 23:30
|
#7
|
elite*gold: 20
Join Date: Feb 2007
Posts: 3,080
Received Thanks: 4,294
|
ah ok, hab die anderen posts net gelesen und der startpost war eher zweideutig
|
|
|
06/12/2010, 10:22
|
#8
|
elite*gold: 77
Join Date: May 2008
Posts: 5,430
Received Thanks: 5,878
|
Quote:
Originally Posted by mipez
Zum debuggen hm? Ich rede von Debuggern wie ollydbg etc.^^
|
Klar geht das , einfach alles rausnoppen was stört ...
Aber warum willste es debuggen , es gibt doch decompiler ...
|
|
|
06/12/2010, 10:48
|
#9
|
elite*gold: 0
Join Date: Apr 2008
Posts: 1,079
Received Thanks: 438
|
Dein Request is sowas von nichtssagend, sry.
|
|
|
06/12/2010, 11:56
|
#10
|
elite*gold: 0
Join Date: Jul 2009
Posts: 2,241
Received Thanks: 848
|
Also, ich hab nen Client von nem Spiel. Der lädt automatisch nen Hackshield. Und um genau das zu verhindern, muss ich n paar Calls jumpen. Mit ollydbg kein Problem, aber ich würde gerne wissen wie man das mit AutoIt realisiert.
|
|
|
06/12/2010, 15:55
|
#11
|
elite*gold: 0
Join Date: Apr 2008
Posts: 1,079
Received Thanks: 438
|
Achso...
Wieso Patched du nicht die modifizierte exe? Du kannst auch ne dll schreiben für die jumps und diese dann mit autoit ( or what else) callen. Soweit zur Theorie, für genauere Infos müsstes du die Profis fragen.
|
|
|
06/12/2010, 16:06
|
#12
|
elite*gold: 0
Join Date: Jul 2009
Posts: 2,241
Received Thanks: 848
|
Quote:
Originally Posted by | Moep |
Achso...
Wieso Patched du nicht die modifizierte exe? Du kannst auch ne dll schreiben für die jumps und diese dann mit autoit ( or what else) callen. Soweit zur Theorie, für genauere Infos müsstes du die Profis fragen.
|
Hm, für ne dll reicht mein C-Wissen nich aus (ich hänge noch bei cout und cin rum xD).
Ne dll mit AutoIt zu injecten is ja einfach :x
Aber mal so, gibt's überhaupt Grundbefehle für's Debuggen?
|
|
|
06/12/2010, 16:09
|
#13
|
elite*gold: 0
Join Date: Apr 2008
Posts: 1,079
Received Thanks: 438
|
Naja, is ja im Grunde "nur" Assembly. Schau mal  .
|
|
|
06/12/2010, 16:22
|
#14
|
elite*gold: 7110
Join Date: Jun 2009
Posts: 28,902
Received Thanks: 25,407
|
Quote:
Originally Posted by mipez
Zum debuggen hm? Ich rede von Debuggern wie ollydbg etc.^^
|
Ein Debugger in Autoit ist nicht/nur schwer möglich.
Du redest von einem Patcher, das macht man doch mit eurer NomadMemory oder wie das heißt.
Nop hat den Wert 0x90
|
|
|
06/12/2010, 17:01
|
#15
|
elite*gold: 1
Join Date: Feb 2009
Posts: 1,726
Received Thanks: 729
|
Genau,
dazu verwendest du einfach den Befehl _MemoryWrite und setzt auf deine Adresse den NOP Befehls (0x90)
|
|
|
 |
|
Similar Threads
|
Debuggen
07/31/2010 - WoW Private Server - 0 Replies
Hallo Liebe gemeinschaft,
Hätte da eine frage könnte mir wer ein tut oder sonstiges schicken wo drinnen beschrieben wird wie man Buggy Spells Fixen kann oder mir direkt eins machen könnte ^^ (Sühne für Priester bräuchte ich)
MfG. Xelby
|
Datei debuggen
07/04/2010 - General Coding - 1 Replies
//edit hat sich erledigt =)
|
Cheat Engine - Bei Debuggen Spielfenster weg
05/10/2010 - General Coding - 9 Replies
Hi
Wenn ich mit Cheat Engine Adressen suche und filtere oder sogar
pointer suche, funktioniert alles sehr gut. Sobald ich jedoch den
Debugger aktiviere, also zum Beispiel auf eine Adresse "Find out what writes to
this address" anwenden will, dann schliesst sich einfach das Fenster vom Spiel.
Ohne Meldung, ohne Nix. Jedesmal.
Was kann man da machen?
Ist übrigens auch bei OllyDBG so. Das Game lässt sich einfach nicht debuggen.
Thx.
|
Probleme beim debuggen
10/17/2007 - General Coding - 4 Replies
Hijo,
habe mir mal http://www.elitepvpers.com/forum/tutorials/79448-dm a-ueberlisten.html dieses Tutorial angeschaut und eigentlich läuft alles glatt, aber ich glaube ich lande in der falschen zeile. Normal den breakpoint gesetzt
Directupload.net - owk8qs7c.jpg
und dann
Directupload.net - 6z77gihp.jpg
komme ich in diese zeile. Laut tutorial sollte ich aber in eine Zeile mit MOV befehl kommen. Kann ja auch anders sein, habe dann einfach mal den Ursprung von ebx gesucht, allerdings...
|
Problem beim debuggen von Solitär
05/23/2007 - General Coding - 10 Replies
So, der übung halber debugge ich im Moment ab und an Programme und suche irgendwelche Variablen raus und probiere die Adresse dazu zu finden. Bei Solitär probiere ich das gerade mit den Punkten.
Also ich habe über tsearch die adresse natürlich gefunden. Habe dann das ganze über ollydbg gesucht breakpoint gesetzt und auch den dazu passenden asm code gefunden :) Jetzt kommt das problem, meine asm kenntnisse sind doch sehr begrenzt. Screen ist im Anhang.
Die start Adresse ist markiert, von da...
|
All times are GMT +1. The time now is 07:12.
|
|