cs_tucco
Messages postés12Date d'inscriptionlundi 13 janvier 2003StatutMembreDernière intervention 3 août 2007
-
6 sept. 2006 à 12:40
cs_tucco
Messages postés12Date d'inscriptionlundi 13 janvier 2003StatutMembreDernière intervention 3 août 2007
-
14 sept. 2006 à 19:18
Salut a tous,
Merci a tous, pour tous ces codes qui me sont personnellement, en tant qu autodidacte, d une precieuse aide.
La j ai un probleme que je n arrive pas a resoudre:
J ai un executable dont la fonction est de charger un driver .sys, pour des raisons de portabilite j aimerais faire un seul fichier contenant les 2 (.exe + .sys), ce fichier serait un executable qui charge le driver, dans mes recherches j ai trouve une piste : le format PE. mais j ai du mal a trouver un tuto ou des explications claires sur la procedure a suivre pour associer les fichiers.
si vous avez des pistes ou la solution, quelque chose qui pourrait faire avancer mon projet, je vous en serais tres reconnaissant.
cs_tucco
Messages postés12Date d'inscriptionlundi 13 janvier 2003StatutMembreDernière intervention 3 août 2007 6 sept. 2006 à 12:51
Merci pour ton aide
comment le mettre en ressource, j utilise visual C .net, ResEditor ??
j ai le code pour l extraire mais pas la procedure pour le mettre en ressource
24Karas
Messages postés233Date d'inscriptionjeudi 4 juillet 2002StatutMembreDernière intervention 5 juillet 2008 6 sept. 2006 à 13:30
Visual C .net <-- ok, j'avais pas vu
Il doit y avoir un editeur de ressource dans ton Visual studio. Donc il faut ajouter le fichier comme data je pense.
Surement qu'avec ton code d'extraction de ressource il y a un exemple avec un fichier en ressource.
pt'etre que quelqu'un d'autre peut aider un peu plus là dessus ...
cs_tucco
Messages postés12Date d'inscriptionlundi 13 janvier 2003StatutMembreDernière intervention 3 août 2007 6 sept. 2006 à 14:22
j ai essaye ta methode en ajoutant dans les ressources du projet et ca a l air de marcher, je te remercie pour ton aide, j ai perdu pas mal de temps en recherche alors que ct assez simple.
la, je vais voir comment recuperer le fichier de ressource .sys et le copier sur le disque dur ailleurs, une suggestion de ta part peut etre ?? je te tiens au courant.
cs_tucco
Messages postés12Date d'inscriptionlundi 13 janvier 2003StatutMembreDernière intervention 3 août 2007 7 sept. 2006 à 12:38
je me suis rejoui trop vite, j ai integre le fichier .sys dans le projet dans le repertoire ressource via l explorateur de solution, et apres compilation il s avere que le driver ne s integre pas a l executable dont la taille ne change pas et l executable m indique qu il ne trouve pas la ressource, j ai regarde sur le post indique, le projet testeur ressemble a ce que je veux faire, mais j aurais besoin de connaitre la procedure exact car je ne vois pas comment arriver a ce resultat, voici le code que j utilise pour extraire le fichier .sys:
// Boucle while pour ecrire la ressource sur le disque
while(aFileSize--){
unsigned
long numWritten;WriteFile(file_handle, aFilePtr, 1, &numWritten, NULL);
aFilePtr++;
}
CloseHandle(file_handle);
return 5;}
voila je rappelle le probleme que je cherche a resoudre: j ai 2 fichiers un exectuable qui charge un driver driver.sys qui marchent tres bien separemment, ce que je veux c de faire un seul fichier executable avec les 2 (exe + sys) pour des raisons de portabilite
cs_LordBob
Messages postés2865Date d'inscriptionsamedi 2 novembre 2002StatutMembreDernière intervention11 mai 20099 8 sept. 2006 à 01:21
"J ai un executable dont la fonction est de charger un driver
.sys, pour des raisons de portabilite j aimerais faire un seul fichier
contenant les 2 (.exe + .sys)"
J'aimerais que tu m'explique en quoi cela va amélioré la portabilité de ton app?
Bob...
"La chance accorde ses faveur aux esprits avertis..."
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 8 sept. 2006 à 01:40
tucco > c'est quoi cette boucle pour écrire octet par octet ??? voila bien un truc qu'on ne fait jamais à moins de vouloir ralentir.
Je t'ai passé un lien, il faut faire exact comme c'est dans l'exemple.
Tu connais la taille du driver quand tu l'insères en ressource de l'exe alors code la valeur de buffer en dur et aspire le dedans en 1 seule passe, idem pour WriteFile en 1 seule fois.
cs_tucco
Messages postés12Date d'inscriptionlundi 13 janvier 2003StatutMembreDernière intervention 3 août 2007 10 sept. 2006 à 13:28
oui "portabilite" est mal choisi, mais tu m as compris ce que je veux explicetement c ne plus avoir a deplacer 2 fichiers ou plus mais un seul qui contienne le ou les autres, le code que j utilise n est pas de moi je l ai trouve dans le livre de hoglund, je l ai mis pour ce faire une idee de ce que je cherche a faire et de la peut etre avoir la chance qu une personne m explique comme si j etais un newbie comment integrer mondriver.sys dans mon projet dans visual studio, j ai vu le post BruceNews et j ai telecharge le projet, mais je n arrive pas a savoir pour l instant comment IDR_BINDLL est cree dans le projet, le post n indique pas etape par etape l integration de sa dll, mais je vais a nouveau y jeter un coup d oeil peut etre que je suis passe a cote sans remarquer que la solution est sous mes yeux.
J ai ajoute le fichier mydriver.sys dans le repertoire resources dans l explorateur de solution, naivement j ai cru que ca suffisait mais sans creer d erreur de compilation la procedure ne donne rien, apres avoir vu le projet TESTEUR avec Jcd.dll, dans l explortateur de ressource je vois la ressource IDR_BINDLL, dans mon projet le ressource view est vide, alors comment m y prendre pour faire ?
cs_tucco
Messages postés12Date d'inscriptionlundi 13 janvier 2003StatutMembreDernière intervention 3 août 2007 14 sept. 2006 à 19:18
merci beaucoup BruceNews, c etait exactement ce qu il me fallait tu as tape dans le mille, j ai teste et ca marche du 1er coup, voila le probleme resolu grace a brucenews, pour ceux qui cherche a faire la meme chose, embarque des fichiers dans l executable( dans mon cas un executable lancant un driver .EXE contenant un .SYS) consulter les 2 liens donnes par BruceNews (CP5 chapitre 10), assez simple a realiser, la doc est en anglais basique, je peux mettre la traduction mais je pense que ca ne sera pas necessaire. enfin si qq un la veux qd meme je decrirai etape par etape la procedure a suivre.