AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Funktion überschreiben

Ein Thema von Cyf · begonnen am 26. Mär 2009 · letzter Beitrag vom 26. Mär 2009
Antwort Antwort
Cyf

Registriert seit: 30. Mai 2008
407 Beiträge
 
Lazarus
 
#1

Funktion überschreiben

  Alt 26. Mär 2009, 20:55
Wie ist es möglich den Inhalt einer Funktion zu überschreiben?
Sowohl ein Versuch via

PByte(@Funktionsname)^:= EIN_WERT; führt zu einer EAccessViolation, als auch das Überschreiben durch WriteProcessMemory nach
OpenProcess(PROCESS_ALL_ACCESS, FALSE, GetCurrentProcessId()); scheitert (ERROR_NOACCESS
998 (0x3E6), Invalid access to memory location.), obwohl sich andere Speicherwerte (globale Variablen etwa) ändern lassen. Hierbei scheint es keine Rolle zu spielen, ob der Prozess mit oder ohne Admin-Rechte gestartet wurde.
Man kann einen Barbier definieren als einen, der alle diejenigen rasiert, und nur diejenigen, die sich nicht selbst rasieren.
Rasiert sich der Barbier?
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#2

Re: Funktion überschreiben

  Alt 26. Mär 2009, 21:02
vielleicht versteh ich dich nicht richtig, aber das tut man doch ständig im Bereich Vererbung einerseits oder bei der Zuweisung von Ereignisproceduren. Beide müssen nur gleichlautend definiert sein.
Ich denk mal, du meinst etwas anderes. Vielleicht kannst du noch mal genauer sagen, was du machen willst.

Gruß oki
42
  Mit Zitat antworten Zitat
Benutzerbild von Die Muhkuh
Die Muhkuh

Registriert seit: 21. Aug 2003
7.332 Beiträge
 
Delphi 2009 Professional
 
#3

Re: Funktion überschreiben

  Alt 26. Mär 2009, 21:07
Es scheint, es wolle an die Adresse der Funktion was anderes hinschreiben.
  Mit Zitat antworten Zitat
Cyf

Registriert seit: 30. Mai 2008
407 Beiträge
 
Lazarus
 
#4

Re: Funktion überschreiben

  Alt 26. Mär 2009, 21:09
Zitat von Die Muhkuh:
Es scheint, es wolle an die Adresse der Funktion was anderes hinschreiben.
Ja.
Man kann einen Barbier definieren als einen, der alle diejenigen rasiert, und nur diejenigen, die sich nicht selbst rasieren.
Rasiert sich der Barbier?
  Mit Zitat antworten Zitat
oki

Registriert seit: 30. Dez 2002
Ort: Brandshagen
1.819 Beiträge
 
Delphi 2007 Professional
 
#5

Re: Funktion überschreiben

  Alt 26. Mär 2009, 21:10
Was ist der Sinn dahinter?
42
  Mit Zitat antworten Zitat
Benutzerbild von ErazerZ
ErazerZ

Registriert seit: 27. Mai 2005
Ort: Baden
315 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: Funktion überschreiben

  Alt 26. Mär 2009, 21:25
Wahrscheinlich rechte setzen vergessen. Versuchs mal mit VirtualProtect zuerst aufrufen und danach überschreiben.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:50 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz