Hello World Hook !

Le
acropole
Bonjour à tous,

J'essaye de trouver le moyen de "hooker" directX et openGl pour
afficher des infos par dessus une fenêtre en plein écran (comme par
exemple le fps counter de fraps).

J'ai téléchargé les codes sources suivants mais ils sont plutot
obscurs :

http://www.gamedev.net/community/forums/topic.asp?topic_id=359794

et

http://sourceforge.net/projects/taksi

Quelqu'un pourrait-il me donner des liens vers des explications plus
claires, voire en fournir dans sa réponse ?

Cordialement.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Marc
Le #19159091
"acropole"
Bonjour à tous,
J'essaye de trouver le moyen de "hooker" directX et openGl pour
afficher des infos par dessus une fenêtre en plein écran (comme par
exemple le fps counter de fraps).
J'ai téléchargé les codes sources suivants mais ils sont plutotobscurs :
http://www.gamedev.net/community/forums/topic.asp?topic_id59794
et
http://sourceforge.net/projects/taksi



Tu veux donc faire de l'Overlay.
Il y a de nombreux projets ou articles sur ça
comme http://www.codeplex.com/DirectDrawOverlayLib
ou avec VMR-9
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwmt/html/vmr_d3d.asp
Pour hooker , il vaut mieux utiliser Detours de MS maintenant, comme
conseillé là , bien que l'exemple utilise les vieilles techniques
http://www.ring3circus.com/downloads/direct3d-hooking/
http://www.ring3circus.com/gameprogramming/drawing-on-another-direct3d-programs-viewport/
acropole
Le #19161691
On 21 avr, 14:16, "Marc"
"acropole"

>Bonjour à tous,
>J'essaye de trouver le moyen de "hooker" directX et openGl pour
>afficher des infos par dessus une fenêtre en plein écran (comme par
>exemple le fps counter de fraps).
>J'ai téléchargé les codes sources suivants mais ils sont plutotobs curs :
>http://www.gamedev.net/community/forums/topic.asp?topic_id59794
>et
>http://sourceforge.net/projects/taksi

Tu veux donc faire de l'Overlay.
Il  y a de nombreux projets ou articles sur ça
commehttp://www.codeplex.com/DirectDrawOverlayLib
ou avec VMR-9http://msdn.microsoft.com/library/default.asp?url=/library /en-us/dnwm...
Pour hooker , il vaut mieux utiliser Detours de MS maintenant, comme
conseillé là , bien que l'exemple utilise les vieilles techniqueshttp ://www.ring3circus.com/downloads/direct3d-hooking/http://www.ring3circus.co m/gameprogramming/drawing-on-another-direct3...



Bonjour,

Merci pour ces liens, je vais y jeter un œil.
Concernant detour je l'ai téléchargé mais il y'a un problème de
nmake :

'rc' n'est pas reconnu en tant que commande interne ou externe, un
programme exécutable ou un fichier de commandes.

J'ai cherché sur google et je n'ai absolument rien trouvé. A croire
que je suis le seul au monde à avoir cette erreur :o
Pourtant j'ai rc.exe sous les yeux, dans le même répertoire et
rcdll.dll.

Voici la commande que j'ai tapé :

C:Program FilesMicrosoft Visual Studio 8VCBin>nmake /F "C:Program
FilesMicrosoft ResearchDetours Express 2.1Makefile"

Cordialement
Stephane
Le #19163851
acropole wrote:

Bonjour,

Merci pour ces liens, je vais y jeter un œil.
Concernant detour je l'ai téléchargé mais il y'a un problème de
nmake :

'rc' n'est pas reconnu en tant que commande interne ou externe, un
programme exécutable ou un fichier de commandes.

J'ai cherché sur google et je n'ai absolument rien trouvé. A croire
que je suis le seul au monde à avoir cette erreur :o
Pourtant j'ai rc.exe sous les yeux, dans le même répertoire et
rcdll.dll.

Voici la commande que j'ai tapé :

C:Program FilesMicrosoft Visual Studio 8VCBin>nmake /F "C:Program
FilesMicrosoft ResearchDetours Express 2.1Makefile"

Cordialement



Tu tapes en anglais le message d'erreur et il y a plusieurs hits :
"rc is not recognized as an internal or external command"

Apparemment un problème de PATH ou de variables d'environnement
(vcvars32.bat)
acropole
Le #19165141
On 22 avr, 00:21, Stephane
acropole wrote:
> Bonjour,

> Merci pour ces liens, je vais y jeter un œil.
> Concernant detour je l'ai téléchargé mais il y'a un problème de
> nmake :

> 'rc' n'est pas reconnu en tant que commande interne ou externe, un
> programme exécutable ou un fichier de commandes.

> J'ai cherché sur google et je n'ai absolument rien trouvé. A croire
> que je suis le seul au monde à avoir cette erreur :o
> Pourtant j'ai rc.exe sous les yeux, dans le même répertoire et
> rcdll.dll.

> Voici la commande que j'ai tapé :

> C:Program FilesMicrosoft Visual Studio 8VCBin>nmake /F "C:Program
> FilesMicrosoft ResearchDetours Express 2.1Makefile"

> Cordialement

Tu tapes en anglais le message d'erreur et il y a plusieurs hits :
"rc is not recognized as an internal or external command"

Apparemment un problème de PATH ou de variables d'environnement
(vcvars32.bat)



Bon, après avoir galèré avec les variables d'environnement et les
dossiers relatifs du makefile j'ai fini par tout copier/coller dans le
dossier bin de visual studio et lancer nMake.
Ca marche.
Pourquoi faire simple ?
acropole
Le #19166011
On 22 avr, 09:13, acropole
On 22 avr, 00:21, Stephane


> acropole wrote:
> > Bonjour,

> > Merci pour ces liens, je vais y jeter un œil.
> > Concernant detour je l'ai téléchargé mais il y'a un problème de
> > nmake :

> > 'rc' n'est pas reconnu en tant que commande interne ou externe, un
> > programme exécutable ou un fichier de commandes.

> > J'ai cherché sur google et je n'ai absolument rien trouvé. A croi re
> > que je suis le seul au monde à avoir cette erreur :o
> > Pourtant j'ai rc.exe sous les yeux, dans le même répertoire et
> > rcdll.dll.

> > Voici la commande que j'ai tapé :

> > C:Program FilesMicrosoft Visual Studio 8VCBin>nmake /F "C:Progra m
> > FilesMicrosoft ResearchDetours Express 2.1Makefile"

> > Cordialement

> Tu tapes en anglais le message d'erreur et il y a plusieurs hits :
> "rc is not recognized as an internal or external command"

> Apparemment un problème de PATH ou de variables d'environnement
> (vcvars32.bat)

Bon, après avoir galèré avec les variables d'environnement et les
dossiers relatifs du makefile j'ai fini par tout copier/coller dans le
dossier bin de visual studio et lancer nMake.
Ca marche.
Pourquoi faire simple ?



Bon, j'ai detours mais j'ai un nouveau porblème :

DETOUR_TRAMPOLINE(IDirect3D9 * WINAPI Direct3DCreate9(UINT
SDKVersion), Direct3DCreate9);

1>e:devprojectsneurocomdetourneurohookneurohook.cpp(42) : error
C2143: syntax error : missing ')' before '*'
1>e:devprojectsneurocomdetourneurohookneurohook.cpp(42) : error
C2143: syntax error : missing ';' before '*'
1>e:devprojectsneurocomdetourneurohookneurohook.cpp(42) : error
C2079: 'IDirect3D9' uses undefined struct '_DETOUR_TRAMPOLINE'
1>e:devprojectsneurocomdetourneurohookneurohook.cpp(42) : error
C4430: missing type specifier - int assumed. Note: C++ does not
support default-int
1>e:devprojectsneurocomdetourneurohookneurohook.cpp(42) : error
C2556: 'int *Direct3DCreate9(UINT)' : overloaded function differs only
by return type from 'IDirect3D9 *Direct3DCreate9(UINT)'
acropole
Le #19166001
On 22 avr, 09:13, acropole
On 22 avr, 00:21, Stephane


> acropole wrote:
> > Bonjour,

> > Merci pour ces liens, je vais y jeter un œil.
> > Concernant detour je l'ai téléchargé mais il y'a un problème de
> > nmake :

> > 'rc' n'est pas reconnu en tant que commande interne ou externe, un
> > programme exécutable ou un fichier de commandes.

> > J'ai cherché sur google et je n'ai absolument rien trouvé. A croi re
> > que je suis le seul au monde à avoir cette erreur :o
> > Pourtant j'ai rc.exe sous les yeux, dans le même répertoire et
> > rcdll.dll.

> > Voici la commande que j'ai tapé :

> > C:Program FilesMicrosoft Visual Studio 8VCBin>nmake /F "C:Progra m
> > FilesMicrosoft ResearchDetours Express 2.1Makefile"

> > Cordialement

> Tu tapes en anglais le message d'erreur et il y a plusieurs hits :
> "rc is not recognized as an internal or external command"

> Apparemment un problème de PATH ou de variables d'environnement
> (vcvars32.bat)

Bon, après avoir galèré avec les variables d'environnement et les
dossiers relatifs du makefile j'ai fini par tout copier/coller dans le
dossier bin de visual studio et lancer nMake.
Ca marche.
Pourquoi faire simple ?



J'apporte une petite précision : je ne cherche pas vraiment à
détourner les fonctions graphiques de l'application externe.
En fait, tout ce qui m'intéresse, c'est de pouvoir afficher mes
fenêtres par dessus une application en plein écran sans que celle-ci
ne soit réduite.
Je ne sais pas si il est absolument incontournable de passer par du
hook ou si il y'a un autre moyen plus simple et tout aussi efficace
qui me permettrait, en plus, d'utiliser les winforms, ce qui
m'éviterais d'avoir à gérrer un système de fenêtre en direct3D et , en
plus, serrait compatible avec tout type d'application et d'OS.

Cordialement.
Stephane
Le #19167011
acropole wrote:

1>e:devprojectsneurocomdetourneurohookneurohook.cpp(42) : error
C2079: 'IDirect3D9' uses undefined struct '_DETOUR_TRAMPOLINE'



Il dit qu'il ne trouve pas DETOUR_TRAMPOLINE dans detours.h (ou
detours.h n'est pas dans le path)
D'après google, il faut parfois recompiler detours.lib aussi..
acropole
Le #19169441
On 22 avr, 13:54, Stephane
acropole wrote:
> 1>e:devprojectsneurocomdetourneurohookneurohook.cpp(42) : error
> C2079: 'IDirect3D9' uses undefined struct '_DETOUR_TRAMPOLINE'

Il dit qu'il ne trouve pas DETOUR_TRAMPOLINE dans detours.h (ou
detours.h n'est pas dans le path)
D'après google, il faut parfois recompiler detours.lib aussi..



Bonjour,

On viens de me parler du hardware overlay.
J'ai cherché sur le net mais je n'ai pas trouvé grand chose (sauf
qu'on peut le faire avec dirext draw mais que c'est deprecated...)
J'ai pu voir des applications faites avec ça et c'est exactement ce
qu'il me faut.

Des infos, liens, livres ?

merci
Marc
Le #19172741
"acropole"
On 22 avr, 13:54, Stephane
acropole wrote:
> 1>e:devprojectsneurocomdetourneurohookneurohook.cpp(42) : error
> C2079: 'IDirect3D9' uses undefined struct '_DETOUR_TRAMPOLINE'

Il dit qu'il ne trouve pas DETOUR_TRAMPOLINE dans detours.h (ou
detours.h n'est pas dans le path)
D'après google, il faut parfois recompiler detours.lib aussi..



Bonjour,



On viens de me parler du hardware overlay.
J'ai cherché sur le net mais je n'ai pas trouvé grand chose (sauf
qu'on peut le faire avec dirext draw mais que c'est deprecated...)



C'est juste une capacité de la carte, pas forcément supportée (::GetCaps, 1
ou plusieurs overlay surfaces ):
http://msdn.microsoft.com/en-us/library/dd390946(VS.85).aspx
http://msdn.microsoft.com/en-us/library/aa916217.aspx
Publicité
Poster une réponse
Anonyme