Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Simples Overlay für DirectX Anwendung... (https://www.delphipraxis.net/142929-simples-overlay-fuer-directx-anwendung.html)

peter001 6. Nov 2009 02:48


Simples Overlay für DirectX Anwendung...
 
Hallo!

Ich versuche gerade in ein Spiel ein Overlay einzublenden.
Die Forensuche hat mir sehr viele Ergebnisse mit unmengen von Möglichkeiten geliefert, google hat weniger hilfreiches oder mir komplett unverständliches ausgegeben. Ich bin kein Profi und von DirectX habe ich absolut keine Ahnung, daher verstehe ich da teils nur Bahnhof.

Über unzählige Ecken habe ich diesen Thread gefunden: http://www.delphipraxis.net/internal...t.php?t=124050
und schließlich diesen Post (Link ist auch in dem thread): http://forum.ragnazone.org/print.php...id=1688&page=1
http://www.delphipraxis.net/internal...t.php?p=808170
was mich wiederrum zu madCollection verwiesen hat, welche ich mir heruntergeladen und installiert habe.

Das in dem o.g. Post verlinkte Beispiel (http://forum.ragnazone.org/attachmen...ttachmentid=68) habe ich mir auch mal angeschaut, habe jetzt aber das Problem, dass die Anwendung nicht läuft.
Gibt nach dem Start folgenden Fehler:

http://www.abload.de/img/injecthookerrorw6ev.png

Habe schon versucht in dem Codebeispiel von dem Kerl das Ragnarok (glaube für das spiel war das overlay programmiert?) zu ändern um existierende fenster ansprechen zu können. Selber fehler.
Außerdem habe ich mal den Code bis zu dem Punkt verfolgt wo der fehler ausgegeben wird. Das passiert hier:

(ctl_hook.pas)
Delphi-Quellcode:
function InjectHookDLL : boolean;
var
  wnd : dword;
  ROpid : dword;
  ret : boolean;
begin
  Result := false;

  if not IPCok then begin
    if not CreateIpcQueueEx(RecvIPCName, @GetIPCMessage, 1) then begin
      MessageDlg('[InjectHookDLL] Error, Can''t create IPC Queue.', mtError, [mbOK], 0);
      Application.Terminate;
      exit;
    end;
    IPCok := true;
  end;

[...]
Versuche ich mit gedrückter STRG-Taste auf die Funktion "CreateIpcQueueEx" zu klicken, kommt die Meldung 'Unable to locate file "madCodeHook.pas"'.
Seltsam, ich finde im madCollection Programmordner zwar eine madCHook.pas, aber von einer madCodeHook.pas auf meinem PC keine spur... wo ist die verloren gegangen?

Hier komme ich also nicht weiter und brauche hilfe.

Wie gehe ich nun am besten vor?
Ich muss mich auch nicht an diese Lösung festbeißen, ich möchte im grunde nur eine simple texteinblendung in ein Spiel erreichen.

peter001 6. Nov 2009 19:56

Re: Simples Overlay für DirectX Anwendung...
 
Hab mal ein wenig weitergeforscht, stecke aber an dem leider etwas alten thread (http://www.delphipraxis.net/internal...t.php?p=808170) fest, der code sieht ja ganz interessant aus,
die fehler sind aber die selben wie bei dem user dort.

Habe mir diese DirectX SDK dateien runtergeladen, weiß aber noch nicht so richtig was ich mit denen anstellen soll.
Habe mal auf Verdacht alle im Verzeichnis "Borland_D6-7" in mein /.../Borland/Delphi7/Lib Verzeichnis kopiert, hat sich aber nichts getan. Selbe Fehlermeldungen.
Was mache ich falsch?


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:20 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