Deploiement projet VB 2008 - comment intégrer les DLL dans l'exe final

cs_bidouille007 Messages postés 257 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 22 décembre 2012 - 20 nov. 2009 à 01:56
cs_bidouille007 Messages postés 257 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 22 décembre 2012 - 12 déc. 2009 à 03:03
Bonjour

J'espère avoir pris le bon thème ?

Voilà j'ai un projet en visual basic net 2008 et dans ce dernier j'ai quelques imports du style :
Imports System.Data
Imports System.Data.OleDb
Imports Microsoft.Win32
Imports ShockwaveFlashObjects
Imports System.IO
Imports System.Text
Imports System.Net

mais lors de la génération en release je me retrouve avec un nombre important de fichiers DLL.

Alors la question est toute simple comment faire pour que les DLL soient dans l'exécutable et donc dans le release n'avoir qu'un seul fichier .exe ?

Pour être complètement clair j'aimerai pouvoir diffuser le programme sans les dll puisque ils sont au chaud dans l'exécutable car sinon je serai obligé de faire un zip pour que le logiciel fonctionne.

A coté de ca j'ai des images ou des icônes dans le programme et là eux ils sont bien dans l'exécutable, je voudrai pouvoir faire pareil avec les dll.


D'avance merci pour votre aide

bidouille007

6 réponses

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
20 nov. 2009 à 02:12
salut,

distribuer juste l'exe?
à quoi bon si l'utilisateur n'a pas le framework

ce que tu veux faire n'est pas possible (et c'est pas forcément plus mal)
http://www.vbfrance.com/forum/sujet-AJOUTER-DLL-DANS-VISUAL-BASIC_1376654.aspx

++

[hr]
0
cs_bidouille007 Messages postés 257 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 22 décembre 2012 1
20 nov. 2009 à 02:56
Merci PCPT de ta réponse qui hélas me fait

Juste pour que tu valides la chose.

Admettons que j'ajoute ces dll dans le projet comme si c'était un bout de code (ajout d'une référence existante) cela ne regle t'il pas le problème.

Et puis pour ma culture personnelle pourquoi les images dans My.Ressources sont elles par contre dans l'executable et pourquoi ne pourrait on pas faire pareil avec les DLL ?

bidouille007
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
20 nov. 2009 à 04:59
que je valide? c'est à toi de le faire avec le bouton prévu à cet effet

non de toute façon un exe n'est pas un fourre-tout. d'un point de vue pratique ce qui est en ressource grossi l'exe donc
*taille hd
*taille ram
*temps d'extraction
*...

ensuite un dll devra être enregistrée donc perte de temps pour
*temps d'extraction
*temps d'enregistrement (late binding?...)
*conflit de versions possible
*conflit de droits possible
*obligation d'enregistrement avant affichage de toute form
*...

et enfin (évidemment encore plus évident en vb.net) :
ce n'est pas le rôle de l'exe!
on en est à séparer l'interface du code executif (d'où WPF), ce n'est surement pas pour de l'autre côté utiliser l'exe comme un zip

bonne continuation
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
20 nov. 2009 à 09:38
Personnellement, je ne comprend pas pourquoi tu as des dlls à fournir avec ton executable.

A part ShockwaveFlashObjects, tuos tes imports sont des objets standard du framework. Les dlls correspondantes ne doivent pas suivre dans ton empaquetage. Le framework doit simplement être installé au complet sur la machine cible (au pire tu peux fournir le pack de redistribution dans ton empaquetage, c'est une option à cocher si tu utilise les outils de Visual Studio pour faire l'empaquetage)

Tu ne devrais avoir uniquement que l'exe, et éventuellement le Shockwavemachinchose à fournir


[i][b]---- Sevyc64 (alias Casy) ----
[hr]# LE PARTAGE EST NOTRE FORCE #/b/i
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bidouille007 Messages postés 257 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 22 décembre 2012 1
20 nov. 2009 à 11:28
merci pour vos réponses je fais les tests et je vous ferai un topo de ces derniers et je cliquerai sur REPONSE ACCEPTEE

A très bientôt donc.

bidouille007
0
cs_bidouille007 Messages postés 257 Date d'inscription jeudi 11 septembre 2008 Statut Membre Dernière intervention 22 décembre 2012 1
12 déc. 2009 à 03:03
me revoila avec mes histoires de DLL.

Donc pour simplifier la chose j'ai retiré l'import ShockwaveFlashObjects.

Mais j'ai absolument besoin de savoir comment je peux faire car j'ai une nécessité absolue d'utiliser du SQLite donc j'ai comme import System.Data.SQLite et donc comment faire pour s'en passer et rester compatible avec SQLite.

Sinon y a t'il quelque part sur la toile des infos sur le dll atl.dll ?

Merci d'avance de votre aide

bidouille007
0
Rejoignez-nous