AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein DLL Function fungiert anders als "direkte".
Thema durchsuchen
Ansicht
Themen-Optionen

DLL Function fungiert anders als "direkte".

Ein Thema von gizzy · begonnen am 1. Okt 2008 · letzter Beitrag vom 1. Dez 2008
 
brechi

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

Re: DLL Function fungiert anders als "direkte".

  Alt 1. Okt 2008, 22:46
Der Code ist echt unsauber programmiert. WinAPIs haben doch Rückgabvewerte auf die man prüfen sollte. Eine Exception kann nur noch bei der Division (durch 0) auftreten. Und wenn du statt einem Single Real nimmst kommt ein ganz anderes ergebnis raus. Das macht absolut keinen Sinn was du da dann machst. Ich denke der Code stammt nicht von dir oder? Du liest außerdem aus einem dynamsichen Speicherbereich die Daten aus, was auch nicht wirklich "sauber" ist.

Irgendwie so würds jetzt umgewandelt aussehen (habs heir im Editor programmiert )

Delphi-Quellcode:
function get_x(pid: Integer; offset_base: DWord; offset: Dword = $7C; Divider: Double = 10.0): Integer;
var
  BaseAddress : DWord;
  xRegionFloat : Single;
  hProcess : THandle;
  rBytes : Cardinal;
  PositionInt : Byte;
begin
  Result := 0;
  if Divider <> 0 then
  begin
    hProcess := OpenProcess(PROCESS_VM_READ,False,pid);
    if hProcess <> 0 then
    begin
      if ReadProcessMemory(hProcess, Pointer(offset_base), @baseAddress, SizeOf(baseAddress), rBytes) and
        (rBytes = SizeOf(baseAddress)) and
        ReadProcessMemory(hProcess, Pointer(baseAddress + offset), @xRegionFloat, SizeOf(xRegionFloat), rBytes) and
      (rBytes = SizeOf(xRegionFloat)) and
        ReadProcessMemory(hProcess, Pointer(baseAddress + offset+4), @PositionInt, SizeOf(PositionInt), rBytes) and
      (rBytes = SizeOf(PositionInt)) then
        result := Round(xRegionFloat / Divider + (PositionInt* 3 - $195) shl 6));
    end;
  end;
end;
Edit:
Du versuchst jetzt nicht seit 7 Monaten einen Cheat/Bot für Silkroad zu erstellen oder ^^
  Mit Zitat antworten Zitat
 


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 11:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz