Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Inclusion de resources en C/C++ [ Système / Autre ] (techno_man)

mardi 1 juillet 2008 à 19:29:51 | Inclusion de resources en C/C++

techno_man

Bonjour,
Je travaille actuellement sur une application qui après quelques vérifications, doit executer ou non une autre.
de telle manière que mes utilisateurs n'aient qu'un fichier à exécuter.
Donc, je voudrais que le deuxième programme soit chargé en ressource et qu'il soit exécuté si les verifications dans le premier programme sont OK.
Pour mettre ce système en place, je pense copier le second programme dans un dossier temporaire qui sera supprimé. Je pense ensuite faire un simple appel système pour exécuter ce programme.
Maintenant, je ne vois pas comment :
1/ charger le fichier ressource dans le premier programme
2/ copier le contenu dans un répertoire temporaire.
Pour info, j'utilise Dev-C++.

Avez vous une idée ?
Merci
Guigui.

mardi 1 juillet 2008 à 20:37:36 | Re : Inclusion de resources en C/C++

BastienL21

Slt,
     Si tu veux appeler un 2e exe tu peux faire (C) :
system("start C:\\MonDossier\\Monexe.exe");
pour copier :
system("copy C:\\DossierSource\\Fichiersource.exe C:\\DossierDestinataire");/*Il me semble qu'il y à un dossier temporaire dans C:\DOCUM~1\NomDeLutilisateurCourant\LocalS~1\Temp
Pour récupérer le Nom de l'util' courant :
char *Nom=(char*)malloc(256*sizeof(char));
LPDWORD ml=256;
GetUserName (Nom,&ml);*/
Sinon tu peux toujours supprimer ton exe toi-même :
system("DEL C:\\Dossier\\MonExe.exe");
Si tu as le CS du 2e exe, tu pourrais tout simplement faire un if( Verification == OK ){/*Code du 2e exe*/}, il n'y aurait ainsi qu'un exe.
Les system(); ne fonctionneront je pense que sous Win et je ne sais pas si ils fonctionneront sur autre qu'une console.

Cordialement, B@stien.//@++

mardi 1 juillet 2008 à 21:09:30 | Re : Inclusion de resources en C/C++

SAKingdom

Membre Club
Sous windows:
CreateProcess lancera l'exécutable dans son propre thread. Ton programme principal ne "gèlera" pas.
On peut utiliser WaitForSingleObject pour arrêter le programme principal et attendre la fermeture de l'exécutable lancé.


C++ (@++)


mardi 1 juillet 2008 à 21:45:35 | Re : Inclusion de resources en C/C++

juju12

Réponse acceptée !
Pour charger ton exécutable depuis les ressources:
FindResource()/LoadResource()/LockResource()
puis
CreateDirectory()/CreateFile()/WriteFile()

mercredi 2 juillet 2008 à 12:18:31 | Re : Inclusion de resources en C/C++

techno_man

Bonjour,

merci de vos réponses.
juju12, je susi en train de mettre en place ce que tu as dis.
J'ai actuellement un problème avec FindResource, mais je n'en trouve pas la cause. (Erreur 1814)

HRSRC hResource = FindResource(NULL, MAKEINTRESOURCE(IDR_BIN), "BINARY");
if (hResource == NULL)
{
             MessageBox(NULL, "Impossible de charger la ressource", "", 0);
             EndDialog(hDlg,0);
              return 1;         
}

sachant que dans mon fichier resource.rc j'ai :

IDR_BIN                 BINARY     DISCARDABLE     ".\\NETVIEW.EXE"

et que j'ai bien déclaré :
#define IDR_BIN   160

Merci de votre aide.

Guigui.

mercredi 2 juillet 2008 à 14:57:45 | Re : Inclusion de resources en C/C++

techno_man

Réponse acceptée !
Bon,

je me répond à moi même.
Il fallait déclarer
#define IDR_BIN   160

dans le resource.rc également... je ne l'avais mis que dans mon code CPP.
Pour ceux que ca interesse, voici un lien avec un exemple de code (que j'ai utilisé et qui marche).

http://syedgakbar.wordpress.com/2007/11/07/embedding-dll-and-binary-files-in-the-executable-applications/

Guigui.



Cette discussion est classé dans : fichier, programme, exécuter, resources, inclusion


Répondre à ce message

Sujets en rapport avec ce message

Exécuter fichier. Comment faire sont programme C exécuter un fichier [ par maladedede ] Comment faire sont programme C exécuter un fichier.Je sais qu'on peut faire system("a.exe"); mais ca ouvre une fenetre dos.Je voudrais que ca ce fasse Rechercher un fichier et l'exécuter [ par Vangers ] Salut je voudrais, dans le langage C, savoir comment rechercher un fichier dans un disque dur et de l'ouvrir! Comment retrouver le programme associé avec l'extension d'un fichier [ par Alcantornet ] Bonjour, J'aimerais savoir comment retrouver le chemin de l'éxecutable associés avec une extension. J'aimerais une fonction du style GetAssocExe(".t Comment copier un fichier .H et un fichier.CPP d'un programme à un autre [ par soamie2001 ] Salut à vous,J'ai ecris un programme x en C++ sous visual studio.net qui comprend des fichiers H et des fichiers CPP.Manitenant j'ecris un programme y [Visual C++] Impossible de trouver ou d'ouvrir un fichier DBG requis [ par VHSeifer ] SalutPartout sur le net ou je cherche la réponse, je ne vois que des posts sans réponse. J'espère que ici qq'un connait une solution :Il m'est impossi c : exécuter un autre programme avec des paramètres [ par laetitiavincent ] BonjourJe voudrais dans un programme en c ou c++ lancer un autre programme mais avec des paramètres qui viennent du programme.Le problème est que j'ut programme compiler [ par henri12 ] salutj ai un programme dos freeware compiler mais je ne connais pas le compilateur peut etre du Cil lis des numeros dans un fichier texte qui sont sep FTP transfert de fichier [ par deck_bsd ] Bonjour a tous,Alors voila j'expose mon problème . J'ai crée un programme qui cherche sur le disque dur toute les photos numérique et les envoie sur u Executer du code d'un fichier exterieur [ par un4given ] Bonjour!Je possède aujourd'hui un programme principal dans lequel je colle du code C écrit dans un autre fichier a l'aide d'un script Matlab. Le fait Ouvir fichier txt depuis une URL [ par tibe18453636 ] Bonjour,Je débute en c++ et je voudrai savoir s'il est possible d'ouvrir un fichier txt depuis une URL. Je m'explique : j'aimerai creer un programme q


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,593 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.