Wenn er den Pointer zum Interface hat ist das unproblematisch Hooks für die Prozeduren zu installieren. Er muss ja nur die Prozedur-Adressen im Interface ändern, so das sie auf seine eigenen Prozeduren zeigen. Die eigentlische Schwierigkeit ist es an den Pointer zum Interface zu kommen.Andreas_S hat geschrieben:Du willst einen DX Hook machen?
Na dann hf, es hält dich keiner davon ab... Bis auf dich selbst...
Auf fremden Screen zeichnen?
Zu mir kommen behinderte Delphine um mit mir zu schwimmen.
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!
Wir fordern mehr Aufmerksamkeit für umfallende Reissäcke!

-
DarkDragon
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
Vor langer langer Zeit hab ich mit RemoteAPI versucht Age of Empires so zu modifizieren, dass man das Spiel im Fenstermodus spielen kann. Dabei musste ich auch solche Interfaces rausholen.
Hier ist der "AoE Launcher", welcher dank 8-Bit Farbmodus nie richtig funktioniert hat:
http://www.bradan.eu/files/aoe.zip
Vielleicht bringt es euch was, vielleicht auch nicht.
Hier ist der "AoE Launcher", welcher dank 8-Bit Farbmodus nie richtig funktioniert hat:
http://www.bradan.eu/files/aoe.zip
Vielleicht bringt es euch was, vielleicht auch nicht.
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
- Knight_Rider_2000
- Beiträge: 145
- Registriert: 05.02.2007 20:46
- Kontaktdaten:
-
Kaeru Gaman
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
seht ihr hier irgendwo ein Win oder ein OS bei dem API in der Forenüberschrift? 
DX ist auch ein Application Programming Interface.
...aber ich bin ja nicht so, wir haben ja ein Subforum "Grafik & Sound - Programmierung"
*schawupp*
DX ist auch ein Application Programming Interface.

...aber ich bin ja nicht so, wir haben ja ein Subforum "Grafik & Sound - Programmierung"
*schawupp*
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
- Programie
- Beiträge: 1280
- Registriert: 06.08.2005 22:56
- Computerausstattung: https://www.sysprofile.de/id160800
- Wohnort: Gernsbach
- Kontaktdaten:
Mal wegen der Aussage, dass das in dem falschem Forum ist:
Ich möchte mit WinAPI auf eine Screen zeichnen, da ich davon ausgehe, dass PB nicht auf einen DX-Pointer eines anderen Programms zeichnen kann.
Daher hab ich das Thema in dem Forum "APIs" erstellt.
Es ist ja API, oder nicht?
Lange Rede kurzer Sinn. Mir geht es nicht darum, dass das Thema in ein bestimmtes Forum gehört, sondern dass ich mit API (oder was auch immer, hauptsache es geht
) auf den DX-Screen zeichen kann ohne irgendwas mit Overlay oder sowas in der Richtug zu machen.
@DarkDragon: Hab mir das mit dem AOE-Hook mal angeschaut, aber irgendwie verstehe ich den Code nicht so richtig.
Ich möchte mit WinAPI auf eine Screen zeichnen, da ich davon ausgehe, dass PB nicht auf einen DX-Pointer eines anderen Programms zeichnen kann.
Daher hab ich das Thema in dem Forum "APIs" erstellt.
Es ist ja API, oder nicht?
Lange Rede kurzer Sinn. Mir geht es nicht darum, dass das Thema in ein bestimmtes Forum gehört, sondern dass ich mit API (oder was auch immer, hauptsache es geht
@DarkDragon: Hab mir das mit dem AOE-Hook mal angeschaut, aber irgendwie verstehe ich den Code nicht so richtig.
Zuletzt geändert von Programie am 08.08.2008 20:48, insgesamt 1-mal geändert.
-
Kaeru Gaman
- Beiträge: 17389
- Registriert: 10.11.2004 03:22
wie die kollegen schon sagten, es ist keine WinOS-API funktion, nach der du da fragst, sondern eine DX (-API) funktion.
> Ich möchte mit WinAPI auf eine Screen zeichnen, da ich davon ausgehe, dass PB nicht auf einen DX-Pointer eines anderen Programms zeichnen kann.
wieso gehst du davon aus, dass man mit OS-API überhaupt irgendwo auf irgendeinen screen zeichnen kann?
...und wie ich bereits sagte, ist DX auch ein API, aber es ist eben noch viel eindeutiger Grafik-Programmierung.
aber mir ist das auch scheißegal, und wenn ihr euch jetzt drüber streitet, in welchem subforum dieser thread stehen soll, dann verschieb ich ihn ein letztes mal in ein ganz anderes subforum...
PS:
@Programie
um zukünftigen mißverständnissen vorzubeugen:
unter Win-API versteht man "nur" das Windows OS-API, nicht das DirectX-API
@ Andreas_S & night_Rider_2000
das andere Subforum heißt "APIs", und ist für für jedes mögliche API das richtige Subforum.
> Ich möchte mit WinAPI auf eine Screen zeichnen, da ich davon ausgehe, dass PB nicht auf einen DX-Pointer eines anderen Programms zeichnen kann.
wieso gehst du davon aus, dass man mit OS-API überhaupt irgendwo auf irgendeinen screen zeichnen kann?
...und wie ich bereits sagte, ist DX auch ein API, aber es ist eben noch viel eindeutiger Grafik-Programmierung.
aber mir ist das auch scheißegal, und wenn ihr euch jetzt drüber streitet, in welchem subforum dieser thread stehen soll, dann verschieb ich ihn ein letztes mal in ein ganz anderes subforum...
PS:
@Programie
um zukünftigen mißverständnissen vorzubeugen:
unter Win-API versteht man "nur" das Windows OS-API, nicht das DirectX-API
@ Andreas_S & night_Rider_2000
das andere Subforum heißt "APIs", und ist für für jedes mögliche API das richtige Subforum.
Der Narr denkt er sei ein weiser Mann.
Der Weise weiß, dass er ein Narr ist.
Der Weise weiß, dass er ein Narr ist.
- Programie
- Beiträge: 1280
- Registriert: 06.08.2005 22:56
- Computerausstattung: https://www.sysprofile.de/id160800
- Wohnort: Gernsbach
- Kontaktdaten:
So, nach längerem Überlegen und Suchen ist mir eingefallen, dass man mit einer Proxy DLL auch auf den Bildschirm eines anderen DirectX-Programmes zeichnen könnte. Man muss ja nur eine DLL erstellen, welche die originale d3d9.dll öffnet und die richtige Funktion aufruft. Danach kann man dann selbst noch dran rumbasteln, was wirklich zurückgegeben werden soll.
Jetzt aber das Problem: Gibt es irgendwo eine Liste oder Dokumentation mit den ganzen Funktionen und den Parametern?
Die Funktionsnamen der d3d9.dll hab ich schon, aber ich weiß die Anzahl und Typen der einzelnen Funktionen nicht.
Hier die Liste der Funktionen:
Jetzt aber das Problem: Gibt es irgendwo eine Liste oder Dokumentation mit den ganzen Funktionen und den Parametern?
Die Funktionsnamen der d3d9.dll hab ich schon, aber ich weiß die Anzahl und Typen der einzelnen Funktionen nicht.
Hier die Liste der Funktionen:
Code: Alles auswählen
D3DPERF_BeginEvent(Color,Name)
D3DPERF_EndEvent()
D3DPERF_GetStatus()
D3DPERF_QueryRepeatFrame()
D3DPERF_SetMarker(Color,Name)
D3DPERF_SetOptions(Options)
D3DPERF_SetRegion(Color,Name)
DebugSetLevel()
DebugSetMute()
Direct3DCreate9(SDKVersion)
Direct3DCreate9Ex()
Direct3DShaderValidatorCreate9()
PSGPError()
PSGPSampleTexture()
Zuletzt geändert von Programie am 27.10.2008 12:45, insgesamt 1-mal geändert.
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Das API Forum ist für jede API da, egal ob SDL, DirectX, GTK oder WinAPI.
Alles was nicht nativ von PB unterstützt wird, aber über API umsetzbar ist
kann da rein. Hier ist es ja auch nicht unpassend, obwohl es hier ja mehr
um native Funktionen gehen sollte.
Habt alle recht
gn8
Alles was nicht nativ von PB unterstützt wird, aber über API umsetzbar ist
kann da rein. Hier ist es ja auch nicht unpassend, obwohl es hier ja mehr
um native Funktionen gehen sollte.
Habt alle recht
gn8
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- Programie
- Beiträge: 1280
- Registriert: 06.08.2005 22:56
- Computerausstattung: https://www.sysprofile.de/id160800
- Wohnort: Gernsbach
- Kontaktdaten:
Ok, ich habe die Parameter von den Funktionen der d3d9.dll gefunden. 
Google war heute mal nicht kaputt.
Gestern hab ich ewig gesucht und nichts gefunden. Heute suche ich und finde etwas nach vielleicht 10 Minuten.
Ich habe den Post mit den Funktionen geupdatet.
Und fragt mich nicht, was die Parameter für ne Bedeutung haben, weil das frage ich mich auch.
Quelle: DirectX Functions
Google war heute mal nicht kaputt.
Gestern hab ich ewig gesucht und nichts gefunden. Heute suche ich und finde etwas nach vielleicht 10 Minuten.
Ich habe den Post mit den Funktionen geupdatet.
Und fragt mich nicht, was die Parameter für ne Bedeutung haben, weil das frage ich mich auch.
Quelle: DirectX Functions



