Einzelnen Beitrag anzeigen

brechi

Registriert seit: 30. Jan 2004
823 Beiträge
 
#39

Re: vergleichen von zwei librarys im speicher

  Alt 8. Jul 2005, 09:41
du musst aj gar nicht die ganze codesection der opegl32.dll prüfen, es reicht ja wenn du die für den cheat benutzen export (glBegin / glDrawElements etc) auf richtigkeit prüfst (20 bytes);

wenn du die dll aus dem speiche von dem game in deinen geladen hast geht das ja einfach über:


Delphi-Quellcode:
h2 := //memory von der opengl32 aus dem spiel die in deine speicher geladne wurde
h1 := LoadLibrary('opengl32.dll');
p := GetProcAddress(h,'glBegin');
if CompareMem(p,cardinal(h1)-h1+h2,20) then
begin

end;
bei den opengl funktionen musst du dir da noch ent mal wegen der relcation tabelle sorgen machen -> die ersten 20 bytes müssen gleich sein da diese nur nen wrapper sind zum treiber in der art

mov eax, fs:[18h]
jmp [eax+7cch]

davon gibt es 3 verschiedene arten, keine braucht dafür die relocation tabelle, demnachmüssten die die gleichen sein (im spiel und selbst geladen)
  Mit Zitat antworten Zitat