pointer, dll Address versatz und ich komme nicht weiter

DarkHell

Neu angemeldet
Registriert
22 Aug. 2013
Beiträge
25
Hey @ll,

kurz als Vorstellung was ich vorhabe, ich bin embedded SW Entwickler und möchte gern von einem Programm (CNC Steuerprogramm) Werte auslesen und diese an meinen Controller Senden (um diese dort zu Visualisieren und Sicherheitsabschaltungen einzubauen). Das Steuerprogramm bietet leider keinerlei Schnittstelle.

So nun habe ich mir erst mal einfach gedacht ich such mir den Handle des Feldes wo die Werte drin stehen und lies sie darüber aus.
Dies geht leider nicht, das es Labels sind und diese keinen eigenen Handle haben sondern das ganze nur auf einem Tpanel endet und von dort komme ich nicht weiter.

Dann dachte ich mir okay ich hab früher recht viel Trainer mit CheatEnging gemacht (War damals irgendwie noch einfacher mein ich *g*), ich such mir einfach die Speicheradresse wo die Werte drin stehen und grab mir diese. Mein Problem an dem Ganzen ist nun aber, dass ich die Adressen zwar gefunden habe die ich erst mal wissen will.

Jedoch komme ich nicht auf den Basepointer, entweder hab ich etwas vergessen oder ich weiß nicht. Ich hab mir die Adressen gesucht und komme nun auf Adresse 0538F8C8 auf den Wert 0039F59C (hier liegt der Wert). Somit ist das 0538F8C8 auch der Pointer auf das Ganze.
(0538F8C8) P-> 0039F59C Wert : 200

so wenn ich nun aber schaue was Zugriff auf den Pointer nimmt komme ich nur noch auf den Stack (push & pop).
Wenn ich in meinem Programm nun die auslese klappt alles wie gewünscht...

Leider ändert sich aber bei einem Neustart des Programms / des Rechners der Pointer immer xxxxF8C8 (die F8C8 bleiben fix) genauso bei der Adresse xxxxF59C und zwar immer von einer applikation.dll +1F59C.

Habt ihr mir einen Tipp wie ich in meinem C# Programm die Speicher Adresse von der DLL rausbekomme? Dann müsste ich es ja haben.

Danke euch,

Gruß,
 
Hilft dir das hier vielleicht weiter?


Mit einer der vorgeschlagenen Methoden solltest du ja die Adresse finden können.
 
  • Thread Starter Thread Starter
  • #3
Perfekt GameChamp,

das war mir entfallen und wusste ich nicht mehr dass ich an die Baseaddress ja auch über das Modul finden kann .. war ein 100%iger treffer
Hab zwar nun 2 Tage lang gegoogelt aber irgendwie hat mir der ansatz gefehlt, ich hab mir nur tonnen von cheatengin Tuts durchgelesen ob sich was geändert hat oder was ... aber auf die idee kam ich natürlich nicht

Super Danke dir =)
 
Nur aus Interesse, nachdem deine Frage ja schon beantwortet wurde. Du schreibst

Dies geht leider nicht, das es Labels sind und diese keinen eigenen Handle haben sondern das ganze nur auf einem Tpanel endet und von dort komme ich nicht weiter.

Muss nicht jede Control ein Window Handle haben und man den Inhalt zumindest mit SendMessage und WM_GETTEXT auslesen koennen? Wenn man die Child Windows des Dialogs enumeriert muss man doch irgendwann an dem Label vorbei kommen.

Kenne den Aufbau der Steuersoftware nicht. Wenn es ein Label auf einer statischen Dialogbox ist, koennte man doch auch mit einem Ressource Editor die Resource ID des Labels rausfinden und dann mit GetDlgItemText den Inhalt auslesen, oder?
 
  • Thread Starter Thread Starter
  • #5
hi electric.larry,

ja das dachte ich Ursprünglich auch mal aber ich hab vor jahren schon versucht ein Label zu finden...
leider ohne Erfolg, auch tools wie winspy, windowfinder, getwindowtext oder xspy ... keiner kommt an das Label.

An das CPanel ja aber danach bekomm ich nichts mehr ...
hab auch mal im internet gesucht aber selbst dort keinerlei erfolg gehabt...

Labels sind irgendwie "komisch". Edit boxen oder alles andere ist recht einfach .. aber keine labels
 
Zurück
Oben