Attaquer une DLL Windows en Java...

Attaquer une DLL Windows en Java... - Java - Programmation

Marsh Posté le 18-02-2004 à 11:49:18    

Hola,
 
J'ai besoin d'aller attaquer une DLL de Windows (NetApi32 pour ne pas la citer). J'ai déjà utilisé JNI il y a quelques temps mais pas sous Windows.
 
J'ai donc ecrit ma classe Java, mon fichier en C, l'extraction de l'interface avec javah.
 
Il ne me reste que la compilation/edition de lien sous Visual C++
 
Quelqu'un aurait-il un pointeur vers une doc mentionnant les éléments pour compiler notamment comment inclure une DLL existante ?
 
Merci

Reply

Marsh Posté le 18-02-2004 à 11:49:18   

Reply

Marsh Posté le 18-02-2004 à 12:16:45    

senternal a écrit :

J'ai besoin d'aller attaquer une DLL de Windows

la violence, c'est mal.


---------------
trainoo.com, c'est fini
Reply

Marsh Posté le 18-02-2004 à 12:48:41    

http://forum.hardware.fr/forum2.ph [...] 0&subcat=0


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 18-02-2004 à 17:49:21    

Arf, je sais que c'est mal la violence...
 


 
Nop, merci du lien mais je l'ai deja vu, et mon probleme ne se situe pas la. En fait, je vois comment générer ma propre librairie a partir d'un fichier C si ce dernier n'a pas besoin d'utiliser des acces a des librairies existantes... Mais dans mon cas, mon source C utilise une librairie deja existante (netApi32.dll). Donc ma question est comment "inclure" cette librairie (ou sa version statique) afin que l'edition de lien se passe bien...

Reply

Marsh Posté le 18-02-2004 à 17:52:15    

Euh bin là, j'vois pas trop. C'est plutôt dans la catégorie C qu'il va falloir aller voir, alors, passke Java n'a pu rien à voir là-dedans, je pense :??:


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 23-02-2004 à 14:21:49    

senternal a écrit :

Hola,
 
J'ai besoin d'aller attaquer une DLL de Windows (NetApi32 pour ne pas la citer). J'ai déjà utilisé JNI il y a quelques temps mais pas sous Windows.
 
J'ai donc ecrit ma classe Java, mon fichier en C, l'extraction de l'interface avec javah.
 
Il ne me reste que la compilation/edition de lien sous Visual C++
 
Quelqu'un aurait-il un pointeur vers une doc mentionnant les éléments pour compiler notamment comment inclure une DLL existante ?
 
Merci


 
ici non http://java.sun.com/docs/books/tutorial/native1.1/ ?

Reply

Marsh Posté le 23-02-2004 à 14:31:14    


 
Non, Taiche à raison. c'est du côté C qu'il faut aller voir.
C'est un peu compliqué à expliquer comme ça en fait. Il faut, soit que tu charges dynamiquement la dll netapi, soit que tu l'utilise statiquement, avec un link. Le plus simple pour toi ça va être le link. Dans VC, tu trouveras les options de link dans les setting de ton projet de dll. il faut que tu trouves le fichier .lib correspondant a netapi32.dll pour le link. Il te faudra aussi le .h qui donne la définition des fonction contenues dans la dll.
Bonne chance.


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-02-2004 à 14:35:48    

euh y'a quoi dans netapi qu'on a pas en java?


---------------
Hey toi, tu veux acheter des minifigurines Lego, non ?
Reply

Marsh Posté le 23-02-2004 à 14:46:49    

the real moins moins a écrit :

euh y'a quoi dans netapi qu'on a pas en java?


 
Surement, parmis d'autres, des fonctions réseaux spécifiques à Windows.


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-02-2004 à 15:04:16    

senternal a écrit :

Arf, je sais que c'est mal la violence...
 
 
 
Nop, merci du lien mais je l'ai deja vu, et mon probleme ne se situe pas la. En fait, je vois comment générer ma propre librairie a partir d'un fichier C si ce dernier n'a pas besoin d'utiliser des acces a des librairies existantes... Mais dans mon cas, mon source C utilise une librairie deja existante (netApi32.dll). Donc ma question est comment "inclure" cette librairie (ou sa version statique) afin que l'edition de lien se passe bien...

T'as pas un netapi32.lib qui traine quelquepart et que tu pourrais inclure dans ton projet ?


---------------
Au royaume des sourds, les borgnes sont sourds.
Reply

Marsh Posté le 23-02-2004 à 15:04:16   

Reply

Marsh Posté le 23-02-2004 à 15:29:52    

R3g a écrit :

T'as pas un netapi32.lib qui traine quelquepart et que tu pourrais inclure dans ton projet ?


 
Il est compris dans l'install de VC en principe.


---------------
Les Vers Solitaires, on aime ... ou pas !
Reply

Marsh Posté le 23-02-2004 à 18:37:52    

el_gringo a écrit :


 
Il est compris dans l'install de VC en principe.


 
J'ai posé la question ici mais ca tournait fortement autour de l'edition de lien qu'on retrouve en C. Le but etant ici de savoir si quelqu'un avait un pointeur interessant. Bref, au final j'ai pu faire le necessaire et effectivement c'etait une option du LINK sous VC++ qu'il fallait inclure
 
Pour repondre a el_gringo, netapi32 dispose d'un fonction NetUserChangePassword (domainname,username,oldpassword,newpassword) qui permet de changer le mot de passe de l'AD Windows. Pourquoi utiliser cette API alors que JNDI le fait tres bien... Simplement pour une question de certificat, JNDI demande un certificat pour modifier un password dans l'AD de Windows et en passant par netapi32.dll, on s'en affranchit...
 
Voilou


Message édité par senternal le 23-02-2004 à 18:38:53
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed