Lancer l'execution d'une ressource

Signaler
Messages postés
22
Date d'inscription
jeudi 1 juillet 2004
Statut
Membre
Dernière intervention
24 mars 2005
-
Messages postés
22
Date d'inscription
jeudi 1 juillet 2004
Statut
Membre
Dernière intervention
24 mars 2005
-
je dois inclure une application (.exe ou .swf:animation
flash) dans mon projet ecrit en utilisant visual c++, j'ai pensé alors à inclure cette application comme ressource, mais la ressource ne se lance pas quand j'execute ce code:


HMODULE hModule=NULL;
LPCTSTR lpName="IDR_RT_RCDATA1";//c'est l'ID de la ressource
//LPCTSTR lpName=MAKEINTRESOURCE(IDR_RT_RCDATA1);
LPCTSTR lpType="RT_RCDATA";
HRSRC x=FindResource(hModule,lpName,lpType);
LoadResource(hModule,x);

au moment de l'execution, j'appuie sur le bouton (où j'ai ecris
ce code) mais l'executable ne se lance pas.(bien sur j'ai
pas oublié d'ajouter #include "Resource.h").

pouvez vous m'indiquer où est le probleme?
merci

6 réponses

Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
quel executable qui ne se lance pas, je ne vois pas l'ombre d'une tentative de lancement.

ciao...
BruNews, Admin CS, MVP Visual C++
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
SI tu souhaite lancer un executables exterieure a ton programme, inutile de le mettre en ressource. Sert toi de CreateProcess() ou ShellExecute.

Pour le swf, par contre j'en ai aucune idée.

Shell
Messages postés
21041
Date d'inscription
jeudi 23 janvier 2003
Statut
Modérateur
Dernière intervention
21 août 2019
26
ShellExecute si cette extension est connue de la base de registre.
Suffit donc de copier toute ta ressource binaire dans un fichier dans dossier temp et de le lancer.

ciao...
BruNews, Admin CS, MVP Visual C++
Messages postés
22
Date d'inscription
jeudi 1 juillet 2004
Statut
Membre
Dernière intervention
24 mars 2005

salut,
ce que je veux c'est que je protege le .exe ou .swf pour qu'on ne peut jamais l'executer sans passer par mon application ecrite en c++.
ton idée le rendra disponible sur le disque dur sans aucune protection.
s'il y a un autre moyen de le faire à part les ressources merci de me le dire.
à bientot
Messages postés
2671
Date d'inscription
vendredi 25 janvier 2002
Statut
Membre
Dernière intervention
6 février 2013
2
Vu le nombre de fichier présent sur un Disque dur ayant windows, je ne pense pas que le gars ait le courage de tous les regarder.

Par exemple mets les dans le repertoire systeme de windows ou alors creer un repertoire avec les propriétés "cacher".

Inutile de passer par des ressource, ca serais meme encore plus facile pour lui de retrouver tes fichiers bianires.
Avec ResHacker par exemple, il peut extraire toute les ressource de ton executable!

Shell
Messages postés
22
Date d'inscription
jeudi 1 juillet 2004
Statut
Membre
Dernière intervention
24 mars 2005

salut,
donc la meilleure solution selon vous est de copier le fichier sur le disque dur avec un autre nom puis l'executer.
1)est ce qu'on peut pas en lançant l'application et regarder les processus qui tournent sur la machine de déduire le fichier?
2)pour faire cela on a besoin de transporter le fichier comme ressource puis le copier sur le disque dur, sinon comment faire? et là il parait que c'est simple de le recuperer en utilisant ResHacker (que je ne connais pas).

merci de me donner vos idées.
à bientot