Sub classer un prog commercial

cs_gi Messages postés 58 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 12 février 2005 - 7 déc. 2004 à 22:26
barley Messages postés 107 Date d'inscription jeudi 28 janvier 2010 Statut Membre Dernière intervention 28 janvier 2010 - 8 déc. 2004 à 17:27
bonsoir à tous,
je cherche a sub classer un programme commercial. J'ai trouvé sur le site differentes sources qui traitent du sujet.
(www.vbfrance.com/code.aspx?ID=4115)
voici le code que j'utilise

Public Sub HookNoah()
Dim hwnd As Long
hwnd = FindWindow(vbNullString, "NOAH")
Call SendMessage(hwnd, WM_SETTEXT, 0, ByVal "NOAH Interfacé")
OldProc = SetWindowLong(ByVal hwnd, GWL_WNDPROC, AddressOf WindowProc)
End Sub

Public Sub UnHookNoah()
Dim hwnd As Long
hwnd = FindWindow(vbNullString, "NOAH")
Call SetWindowLong(ByVal hwnd, GWL_WNDPROC, OldProc)
End Sub

Public Function WindowProc(ByVal hwnd As Long, ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

Select Case uMsg

Case WM_ACTIVATE: Beep

Case WM_MOVE: Beep

Case WM_LBUTTONDOWN: Beep

End Select

WindowProc = CallWindowProc(OldProc, hwnd, uMsg, wParam, lParam)
End Function

la function WindowProc n'est jamais appellée si le hwnd correspont à la fenetre de mon programme commercial.j'ai bien sur controlé que le hwnd etait correct.

Par contre avec le meme code si le hwnd est celui d'une fenetre VB : ça marche ???????????????

merci de votre aide.
Gi

8 réponses

BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
7 déc. 2004 à 23:16
Ben heureusement que c'est pas aussi simple, tout ceci est fini depuis 10 ans dans le monde Windows, il y a separation absolue des espaces memoire.
Il faut injecter le code voulu DANS l'espace memoire du processus cible pour agir dessus.

ciao...
BruNews, MVP VC++
0
cs_gi Messages postés 58 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 12 février 2005
7 déc. 2004 à 23:40
Merci pour cette reponse,

Mais ça ne me dit pas si c'est possible de faire ce que je souhaite ni comment.

puis'je avoir plus de precisions.
merci
Gi
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
7 déc. 2004 à 23:54
Bien sur que tout est possible sur Windows mais des qu'il s'agit de prog systeme il faudra du langage natif compile. On ne peut bien entendu injecter que du code executable sans interpretation dans un autre processus et non du script VB.
Il y a 2 techniques principales:
- CreateRemoteThread().
- Injection de DLL par un hook.
La seconde est a preferer car tu ne risques pas d'interception par un antivirus et elle est nettement plus simple.

ciao...
BruNews, MVP VC++
0
cs_gi Messages postés 58 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 12 février 2005
8 déc. 2004 à 00:02
tout ceci est du chinois pour moi , ou peut on trouver des examples de codes.

merci
Gi
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
8 déc. 2004 à 00:07
Tu peux en trouver plein dans mes sources (cppfrance).

et ici la reference en la matiere:
http://brunews.free.fr/brunews/download/JR4.zip
http://brunews.free.fr/brunews/download/JR4Sources.zip

Tout ceci est en C bien entendu + un peu d'ASM quand besoin.

ciao...
BruNews, MVP VC++
0
cs_gi Messages postés 58 Date d'inscription mardi 20 janvier 2004 Statut Membre Dernière intervention 12 février 2005
8 déc. 2004 à 00:48
merci beacoup pour ces infos.
si j'ai bien compris, impossible de faire ça en VB?

Gi
0
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
8 déc. 2004 à 00:51
VB est fait pour utiliser des composants qui affichent des trucs, pas de la prog syteme.

ciao...
BruNews, MVP VC++
0
barley Messages postés 107 Date d'inscription jeudi 28 janvier 2010 Statut Membre Dernière intervention 28 janvier 2010
8 déc. 2004 à 17:27
conversation entre un chien et un chat...dsl, pas pu m'en empêcher...mdrrrrrrrrrr
0
Rejoignez-nous