| |
|
|
| Wie es sich mit dem Handle des Textes und dessen Adresse verhält, habe ich an einer anderen Stelle schon geklärt - jetzt geht es um das Handle des Edits selbst. Als Ausgangspunkt nehmen wir wieder mal folgenden Quelltext und führen das ganze aus: KompilierenMarkierenSeparierenWindowstyle 31
Windowtitle "Multiedit"
Window 0,0-640,440
Def @GlobalSize(1) !"KERNEL32","GlobalSize"
Def @GlobalLock(1) !"KERNEL32","GlobalLock"
DEF @CopyMemory(3) !"kernel32","RtlMoveMemory"
Def @GlobalReAlloc(3) !"KERNEL32","GlobalReAlloc"
Def @SetParent(2) !"USER32","SetParent"
Def @GetWindowLong(2) !"USER32","GetWindowLongA"
Declare edit&,Text$,ADDR&,Handle&,Text#,WIND_PROC&
Dim Text#,256
LET EDIT&=@Createmultiedit(%HWND,"Test ",20,130,200,200)
LET Text$="ABCD"
LET Handle&=@sendmessage(edit&,$BD,0,0)
Print "Handle des Edits: "+@str$(Edit&)
Settext Edit&,@STR$(Handle&)
Let Addr&=@GlobalLock(Handle&)
@CopyMemory(Addr&,@ADDR(Text$),32)
@CopyMemory(text#,Addr&,32)
Print "Adresse: "+@str$(Addr&)
Print "Breichshandle: "+@str$(Handle&)
Print "Kopierter Text: "+@String$(Text#,0)
PrINT "Bereichgröße: "+@str$(@GlobalSize(Handle&))+" Bytes"
LET WIND_PROC&=@GetWindowLong(Edit&,$FFFFFFFC)
PrINT "Adresse der Fensterprozedur: "+@str$(WIND_PROC&)
Dispose text#
While 0=0
Waitinput
wend
Danach starten wir TNT, klicken im Fenstermenü auf Zahl in Bytefolge umwandeln und geben hier das Fensterhandle (bei mir 131840) ein. Nun klicken wir den Prozess an, den unser Quelltext erzeugt hat und wählen nach einem Rechtsklick ins Treeview Speicher durchsuchen. Die Startadresse setzen wir auf 0, hinter die Bytefolge hängen wir eine 01 an und klicken dann auf Speicher durchsuchen. Die letzte gefundene achtstellige Adresse schauen wir uns mal etwas genauer an und lassen uns 4000 Bytes ab dieser Adresse als dezimale Doublewords auslesen:
[...]
Das steht bei mir (der Windows-Taschenrechner hilft beim Umwandeln der hexadezimalen Fensterstile ins Dezimalsystem): [box:7d03d3bc84] X1=131840 => Handel des Fensters X2=1 X3=-497068184 X4=-30007432 X5=-1607067536 X6=537526278 X7=-2147482864 X8=512 => erweiterter Fensterstil X9=1345392964 => Fensterstil X10=4194304 => Instancehandle X11=44236800 X12=0 X13=-1607067760 X14=0 X15=0 X16=24 => X-Koordinate der oberen linken Ecke auf dem BIldschirm X17=153 => Y-Koordinate der oberen linken Ecke auf dem BIldschirm X18=224 => X-Koordinate der unteren rechten Ecke auf dem BIldschirm X19=353 => Y-Koordinate der unteren rechten Ecke auf dem BIldschirm X20=26 => Clientbereich X-Koordinate der oberen linken Ecke auf dem BIldschirm X21=155 => Clientbereich Y-Koordinate der oberen linken Ecke auf dem BIldschirm X22=206 => Clientbereich X-Koordinate der unteren rechten Ecke auf dem BIldschirm X23=335 => Clientbereich Y-Koordinate der unteren rechten Ecke auf dem BIldschirm X24=2011246703 => Adresse der Fensterprozedur X25=-1607072328 X26=0 X27=0 X28=-1607067368 X29=0 X30=1000 => ID des Fensters im Prozess X31=0 X32=18 X33=20 X34=-1607067320 X35=6 X36=0 X37=0 X38=0 X39=36685600 => An dieser Adresse findet man ein Doubleword, das das Handle des Textes im Edit angibt X40=0 X41=1376262 X42=786688 => Scheint u.a. das Ende des Bereiches mit Fensterinformationen für das Handle 131840 zu markieren X43=15 X44=0 X45=64 X46=65 X47=0 X48=0 X49=0 X50=1 X51=0 X52=0 X53=393220 X54=786688 X55=6619220 X56=7602291 X57=2097184 X58=2097184 X59=32 X60=0 X61=262156 X62=524544 X63=-1607063400 X64=49378 X65=-30007432 X66=0 X67=8388608 X68=0 X69=0 X70=0 X71=-1607067288 X72=0 X73=0 X74=16387 X75=1965456941 X76=0 X77=8 X78=1965424640 X79=0 X80=-509223000 X81=0 X82=0 X83=-1607063256 X84=0 X85=786444 X86=524544 X87=-1607067288 X88=49379 X89=-30007432 X90=0 X91=8388608 X92=0 X93=0 X94=0 X95=-1607067192 X96=0 X97=0 X98=16387 X99=1965456941 X100=0 X101=8 X102=1965424640 X103=0 X104=-509223000 X105=0 X106=0 X107=-1607067096 X108=0 X109=786437 X110=590080 X111=1430472269 X112=842219849 X113=1852793705 X114=7892834 X115=0 X116=0 X117=0 X118=-16777216 X119=327692 X120=524544 X121=-1607067192 X122=49380 X123=-30007432 X124=0 X125=8388608 X126=0 X127=0 X128=0 X129=-1607067056 X130=0 X131=0 X132=16387 X133=1965456941 X134=0 X135=8 X136=1965424640 X137=0 X138=-509223000 X139=0 X140=0 X141=-1607066960 X142=0 X143=786437 X144=590080 X145=1430472269 X146=842225481 X147=1852793705 X148=7892834 X149=0 X150=0 X151=0 X152=0 X153=327686 X154=786688 X155=0 X156=0 X157=100 X158=0 X159=0 X160=0 X161=16000 X162=421 X163=0 X164=0 X165=393228 X166=524544 X167=31195619 X168=0 X169=0 X170=-30007432 X171=-1607066872 X172=1 X173=0 X174=8 X175=1 X176=282 X177=17 X178=0 X179=0 X180=-1607065032 X181=0 X182=0 X183=0 X184=0 X185=0 X186=0 X187=0 X188=0 X189=786446 X190=655616 X191=5439522 X192=6619248 X193=6488169 X194=6619240 X195=6881394 X196=6815854 X197=7077985 X198=2097268 X199=7077985 X200=2097267 X201=6619236 X202=6881402 X203=6357101 X204=6619244 X205=4456480 X206=7667823 X207=7077986 X208=7798885 X209=7471215 X210=7536740 X211=2097186 X212=7274603 X213=6881392 X214=7471205 X215=7209061 X216=-1607401472 X217=917510 X218=1441792 X219=-1607401048 X220=-1607401048 X221=6488179 X222=6881384 X223=6422629 X224=7209061 X225=1179648 X226=6619136 X227=-1607401080 X228=-1607063216 X229=393221 X230=917760 X231=5636134 X232=7471205 X233=6488179 X234=6881384 X235=6422629 X236=7209061 X237=-65536 X238=0 X239=327692 X240=524544 X241=-1607305728 X242=49375 X243=-30007432 X244=0 X245=8388608 X246=0 X247=0 X248=0 X249=-1607066576 X250=0 X251=0 X252=16387 X253=1965480999 X254=0 X255=4 X256=1965424640 X257=0 X258=-509223000 X259=0 X260=0 X261=-1607063584 X262=0 X263=786475 X264=655360 X265=-1607400752 X266=-1607400752 X267=-497330168 X268=0 X269=-1607066480 X270=-2147352568 X271=-2147482752 X272=-1073676031 X273=-2067267131 X274=2011168768 X275=-1029570560 X276=0 X277=0 X278=0 X279=0 X280=171 X281=263 X282=671 X283=389 X284=174 X285=285 X286=668 X287=386 X288=2011198454 X289=0 X290=0 X291=0 X292=0 X293=0 X294=0 X295=0 X296=0 X297=42 X298=0 X299=30 X300=0 X301=0 X302=36533424 X303=0 X304=0 X305=0 X306=0 X307=0 X308=0 X309=0 X310=0 X311=1572883 X312=917504 X313=-1607400944 X314=-1607400944 X315=4325408 X316=7602297 X317=7536741 X318=6357024 X319=7536757 X320=6619244 X321=6619251 X322=4128878 X323=0 X324=438 X325=458764 X326=524288 X327=-1607401000 X328=-1607401000 X329=0 X330=0 X331=-1607066232 X332=67108864 X333=0 X334=8 X335=1 X336=0 X337=0 X338=0 X339=0 X340=-1607060008 X341=0 X342=0 X343=0 X344=0 X345=0 X346=0 X347=0 X348=0 X349=2818060 X350=524544 X351=889848111 X352=1 X353=0 X354=-30007432 X355=-1607066136 X356=67108864 X357=0 X358=8 X359=1 X360=0 X361=0 X362=0 X363=-1607226840 X364=-1607063200 X365=0 X366=0 X367=0 X368=0 X369=0 X370=0 X371=0 X372=0 X373=786444 X374=524544 X375=28377729 X376=1 X377=0 X378=-30007432 X379=-1607066040 X380=67109121 X381=0 X382=8 X383=7 X384=0 X385=0 X386=0 X387=-1607226840 X388=-1607065944 X389=-1607065128 X390=0 X391=0 X392=0 X393=0 X394=0 X395=0 X396=0 X397=786509 X398=524544 X399=0 X400=536870912 X401=61728 X402=0 X403=0 X404=0 X405=-1607065328 X406=17 X407=0 X408=0 X409=0 X410=0 X411=0 X412=0 X413=2147483647 X414=0 X415=9 X416=-1 X417=0 X418=0 X419=3 X420=61456 X421=0 X422=0 X423=0 X424=-1607066616 X425=12 X426=0 X427=0 X428=0 X429=0 X430=0 X431=0 X432=2147483647 X433=0 X434=0 X435=-1 X436=0 X437=0 X438=3 X439=61440 X440=0 X441=0 X442=0 X443=-1607065280 X444=13 X445=0 X446=0 X447=0 X448=0 X449=0 X450=0 X451=2147483647 X452=0 X453=0 X454=-1 X455=0 X456=0 X457=536870912 X458=61472 X459=0 X460=0 X461=0 X462=-1607065240 X463=11 X464=0 X465=0 X466=0 X467=0 X468=0 X469=0 X470=2147483647 X471=0 X472=11 X473=-1 X474=0 X475=0 X476=536870915 X477=61488 X478=0 X479=0 X480=0 X481=-1607065208 X482=11 X483=0 X484=0 X485=0 X486=0 X487=0 X488=0 X489=2147483647 X490=0 X491=10 X492=-1 X493=0 X494=2048 X495=3 X496=0 X497=0 X498=0 X499=0 X500=0 X501=0 X502=0 X503=0 X504=0 X505=0 X506=0 X507=0 X508=2147483647 X509=0 X510=0 X511=-1 X512=0 X513=0 X514=536875008 X515=61536 X516=0 X517=0 X518=0 X519=-1607065176 X520=17 X521=0 X522=0 X523=0 X524=0 X525=0 X526=0 X527=2147483647 X528=0 X529=8 X530=-1 X531=0 X532=0 X533=0 X534=0 X535=0 X536=0 X537=0 X538=0 X539=0 X540=0 X541=0 X542=0 X543=0 X544=0 X545=0 X546=0 X547=0 X548=0 X549=0 X550=0 X551=5046278 X552=786688 X553=5701670 X554=6619241 X555=6619236 X556=6815858 X557=7471205 X558=7602291 X559=7077989 X560=6619244 X561=110 X562=0 X563=393221 X564=786688 X565=4653094 X566=16121970 X567=6619359 X568=14942240 X569=6553710 X570=7471205 X571=110 X572=0 X573=327684 X574=524544 X575=6881357 X576=7208998 X577=7143529 X578=6619241 X579=6619250 X580=110 X581=262148 X582=524544 X583=6357069 X584=7864358 X585=7143529 X586=6619241 X587=6619250 X588=110 X589=262150 X590=786688 X591=5439526 X592=6815843 X593=6881388 X594=14614629 X595=7209061 X596=4259849 X597=7602284 X598=4587563 X599=52 X600=0 X601=393218 X602=524544 X603=0 X604=-1607066136 X605=131078 X606=786688 X607=5701670 X608=6619241 X609=6619236 X610=6815858 X611=7471205 X612=7602291 X613=7077989 X614=6619244 X615=110 X616=0 X617=393220 X618=524544 X619=6881357 X620=7208998 X621=7143529 X622=6619241 X623=6619250 X624=110 X625=262221 X626=524544 X627=0 X628=0 X629=454 X630=0 X631=67437091 X632=67437091 X633=-1607066776 X634=50 X635=0 X636=0 X637=0 X638=282 X639=17 X640=263 X641=2147483647 X642=0 X643=0 X644=-1 X645=0 X646=0 X647=0 X648=0 X649=0 X650=0 X651=0 X652=0 X653=0 X654=0 X655=0 X656=0 X657=0 X658=0 X659=0 X660=0 X661=0 X662=0 X663=0 X664=0 X665=0 X666=0 X667=0 X668=0 X669=0 X670=0 X671=0 X672=0 X673=0 X674=0 X675=0 X676=0 X677=0 X678=0 X679=0 X680=0 X681=0 X682=0 X683=0 X684=0 X685=0 X686=0 X687=0 X688=0 X689=0 X690=0 X691=0 X692=0 X693=0 X694=0 X695=0 X696=0 X697=0 X698=0 X699=0 X700=0 X701=0 X702=0 X703=0 X704=0 X705=0 X706=0 X707=0 X708=0 X709=0 X710=0 X711=0 X712=0 X713=0 X714=0 X715=0 X716=0 X717=0 X718=0 X719=0 X720=0 X721=0 X722=0 X723=0 X724=0 X725=0 X726=0 X727=0 X728=0 X729=0 X730=0 X731=0 X732=0 X733=0 X734=0 X735=0 X736=0 X737=0 X738=0 X739=0 X740=0 X741=0 X742=0 X743=0 X744=0 X745=0 X746=0 X747=0 X748=0 X749=0 X750=0 X751=0 X752=0 X753=0 X754=0 X755=0 X756=0 X757=0 X758=0 X759=0 X760=0 X761=0 X762=0 X763=0 X764=0 X765=0 X766=0 X767=0 X768=0 X769=0 X770=0 X771=0 X772=0 X773=0 X774=0 X775=0 X776=0 X777=0 X778=0 X779=5046376 X780=786432 X781=-1607400264 X782=-1607400264 X783=-497330168 X784=0 X785=-1607064416 X786=-2147352576 X787=-2147482880 X788=-1073741820 X789=1073938433 X790=2011168768 X791=-1029767168 X792=0 X793=0 X794=0 X795=0 X796=342 X797=352 X798=417 X799=375 X800=342 X801=352 X802=417 X803=375 X804=2011218526 X805=0 X806=0 X807=0 X808=0 X809=0 X810=6 X811=0 X812=0 X813=8 X814=0 X815=4 X816=0 X817=0 X818=0 X819=36920200 X820=524288 X821=1376277 X822=786688 X823=787238 X824=0 X825=-497330168 X826=0 X827=-1607064248 X828=-2147352576 X829=-2147482880 X830=-1073741820 X831=1073807360 X832=2011168768 X833=-1029767168 X834=0 X835=0 X836=0 X837=0 X838=423 X839=352 X840=498 X841=375 X842=423 X843=352 X844=498 X845=375 X846=2011218526 X847=0 X848=0 X849=0 X850=0 X851=0 X852=7 X853=0 X854=0 X855=12 X856=0 X857=4 X858=0 X859=0 X860=0 X861=36894488 X862=0 X863=2752533 X864=786688 X865=590610 X866=0 X867=-497330168 X868=0 X869=-1607064080 X870=-2147483648 X871=-2147482880 X872=-1073741820 X873=1073872899 X874=2011168768 X875=-1029308416 X876=0 X877=0 X878=0 X879=0 X880=185 X881=296 X882=217 X883=328 X884=185 X885=296 X886=217 X887=328 X888=2011198490 X889=0 X890=0 X891=0 X892=0 X893=0 X894=20 X895=0 X896=0 X897=0 X898=0 X899=4 X900=0 X901=0 X902=0 X903=36891656 X904=0 X905=4128789 X906=786688 X907=2818818 X908=0 X909=-497330168 X910=0 X911=-1607063912 X912=-2147352576 X913=-2147482880 X914=-1073741820 X915=1073881216 X916=2011168768 X917=-1029308416 X918=0 X919=0 X920=0 X921=0 X922=236 X923=296 X924=662 X925=337 X926=236 X927=296 X928=662 X929=337 X930=2011198490 X931=0 X932=0 X933=0 X934=0 X935=0 X936=65535 X937=0 X938=0 X939=336 X940=0 X941=4 X942=0 X943=0 X944=0 X945=36919616 X946=0 X947=5505036 X948=524544 X949=41681539 X950=0 X951=0 X952=0 X953=-1607063744 X954=67109121 X955=0 X956=8 X957=1 X958=0 X959=0 X960=0 X961=0 X962=-1607060624 X963=0 X964=0 X965=0 X966=0 X967=0 X968=0 X969=0 X970=0 X971=6291464 X972=786432 X973=-1607401032 X974=-1607401032 X975=6881388 X976=14614629 X977=7209061 X978=4259849 X979=7602284 X980=4587563 X981=52 X982=0 X983=393218 X984=786688 X985=32 X986=-1607401080 X987=6815749 X988=721152 X989=843402319 X990=1701988693 X991=1634560371 X992=25959 X993=0 X994=0 X995=0 X996=-1607400960 X997=327692 X998=524544 X999=-1607066576 X1000=49376 [/box:7d03d3bc84] |
|
|
| |
|
|