begin process at 2012 02 10 09:25:14
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

Compilation VC++


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Compilation VC++

jeudi 16 novembre 2006 à 10:58:50 | Compilation VC++

harlock999

Bonjour,

J'ai effectué un ptit web browser simplifié avec des components activx. Mon problème est que j'aimerai avoir une application autonome sans dll dans le répertoire de l'appli ou dans system32, pour pouvoir le lancer a distance sans que les dll soient présentes sur la machine distante...

Mais j'ai l'impression que VC++ ne permet pas de merger les dll dans l'exe.

Si quelqu'un a une soluce je suis preneur merci bien :)

A plus !
jeudi 16 novembre 2006 à 12:38:36 | Re : Compilation VC++

Arnaud16022

Membre Club
ouhlala
disons que effectivement, ce n'est pas une solution standard de mettre les dlls dans l'exe.
Disons que ce n'est pas possible à la compilation, ce n'est pas la faute de VC++: la norme C et C++ ne le permet pas ( tout simplement parce que point de vue bas niveau, ce n'est pas possible )

cela dit, 2 ( au moins ) solutions s'offrent à toi :
Soit tu mets toutes tes dlls en ressource, et tu les recopie sur le disque au runtime si elles n'existent pas déjà. à la fin de l'executable tu rajoutes la taille de chaque dll, puis le nombre de dlls
Soit tu copie-colle le contenu de tes dlls à la fin de ton .exe, tu l'ouvre avec fopen au runtime, tu te places 4octets avant la fin, tu lis l'unsigned int : c'est le nombre de dlls.
à partir de là tu vas en arrière pour connaitre la taille de chaque dll, et tu les extraits si besoin est.

Maintenant, la grande question :
Pourquoi diable as tu besoin de faire ça ?
Si c'est pour l'exec à distance sur un windows, ben le repertoire system32, il l'aura aussi.
Si c'est pour le faire tourner sous unix, ça marchera forcément pas, les .exe y connait pas ^^

Tu as des dlls particulières dans le rep de ton programme ??

_______________________
Omnia vincit labor improbus
vendredi 17 novembre 2006 à 22:25:21 | Re : Compilation VC++

harlock999

Merci pour la réponse,
En fait, ce petit browser allègé aura pour but d'être lancé à distance. Ce qui implique que meme si les dll sont dans le répertoire de l'exécutable, ou même dans system32 elles ne se chargeront pas sur le poste de l'utilisateur qui essaye de le lancer.
Pour apporter plus de précision, j'ai fait un projet windows form. Et je met un objet COM internet web control.

De plus j'ai découvert que le framework.Net doit obligatoirement être installé sur le poste utilisateur. (pour le déploiement c'est pas ça !).

Sinon excuse de mon ignorance ! Mais que veux-tu dire par mettre les dll en ressources ? (peut être dans le 'folder' Ressource de la solution--> add existing item... ???) Et comment rajouter à la fin de l'executable ? En gros as-ty plus de précisions a me fournir pour cette premire solution si possible sans trop abuser de ton temp ?

Merci beaucoup.

samedi 18 novembre 2006 à 11:41:58 | Re : Compilation VC++

Arnaud16022

Membre Club
ben dans les .exe windows, tu as la possibilité d'ajouter des icones, des trucs comme ça .. mais aussi n'importe quel type de fichier . Google est ton ami. Je re sur mon PC dans 2 jours, je pourrai t'envoyer un truc dans le genre.

_______________________
Omnia vincit labor improbus
dimanche 19 novembre 2006 à 23:32:03 | Re : Compilation VC++

harlock999

Bah j'ai déjà mis une icon a mon appli en ressource ! et j'avais essayer de mettre aussi les dll... mais sans succès !
mercredi 22 novembre 2006 à 11:15:44 | Re : Compilation VC++

Arnaud16022

Membre Club
normal, il faut la réécrire sur le disque, pas d'autre solution

_______________________
Omnia vincit labor improbus


Cette discussion est classée dans : dll, compilation, vc


Répondre à ce message

Sujets en rapport avec ce message

pb de linkage pendant la compilation sous VC.NET2003 [ par xjacques ] voila le pb que j ai a la compilation:nafxcwd.lib(dllmodul.obj) : error LNK2005: _DllMain@12 already defined in play.objC est lorsque j essaie de defi choix de compilation avec vc++ [ par jantonof ] je veux intégrer un projet en C à un autre en C++. Pour le faire il faudrait que ca compile uniquement en c++ et non en C, et je ne sais pas comment o Dll vc++ [ par MoDDiB ] J'ai cherché des sources sur les dlls et je n'ai trouvé que des moyens de lancer des fonction de la dll a partir de lexe.Mais je me doute qu'il doit e DLL et VC++ [ par thebigbang ] bonjour à tous, Vous allez vous dire que j'arrête pas d'encombrer le forum, mais certains détails m'échgappent en C++Je pense avoir compris, mais je v .def sous VC++ [ par AlexMAN ] Hello all, alors voilà le pb : j'ai commencé la prog dll en C sous VC++ mais mais mes fonctions une fois compilé ont des décorations. Ex : intlen devi compilation dll [ par myocean ] Quand je compile ma dll en mode debug et que je l'appele d'un autre projet en c++==> pas de prb ça marche nikelmais dés que je complie en mode release Aide Vc++ et dll Vb [ par 3Pom ] Slt all jer voudrais savoir comment appeller une dll ecrite en vb.net en vc++.Merci Que signifie ce message du compilateur [vc++6] [ par dulac02 ] Salut à tousJ'utilise dans mon projet une dll de fichier d'entête dlportio.hle compilateur me fournit ce message d'avertissement :LINK : warning LNK40 Blem de compilation avec VC++ 6.0 [ par raidentr ] Salut,J'ai un blem sous VC++ que je n'arrive pas à résoudre :Quand je compile un projet et que je l'exécute, l'EXE créé se vérouille, et je ne peut de DLL C++ utilisée en VB [ par Jacck ] Bonjour a tous,J'ai un gros problème! J'ai écris une dll en c++ avec VC++ 6.0 Enterprise, en utilisant le win32 dll wizard. J'ai ajouté mes fonctions


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,170 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales