Enregistrer un projet non EXE [Résolu]

Signaler
Messages postés
6
Date d'inscription
mercredi 10 janvier 2007
Statut
Membre
Dernière intervention
14 avril 2010
-
Messages postés
40
Date d'inscription
mardi 4 octobre 2005
Statut
Membre
Dernière intervention
2 mars 2009
-
Bonjour,

Je me demande si il est possible d'enregistrer un projet visual basic autrement que sous la forme exécutable, car à mon travail, je ne peux pas faire d'installation (privilèges administrateur).

Merci de prendre le temps de me répondre.

Bonne journée

Chordially 

14 réponses

Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
21
Pour être plus précis, déjà :
Un exécutable doii, pour être exécuté sur une autre machine, y être "installé"  . Cette installation entraîne celle des Runtimes de VB

Les fichiers d'un projet VB peuvent toujours être copiés sur une machine et collés sur l'autre.
Il sera par contre impossible de "faire tourner" le projet depuis l'IDE de VB si la machine d'accueil ne'est pas dotée du logiciel VB. (c'est évident !)
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
21
Bonjour,

Que veux-tu exactement dire ?
VB est-il installé chez toi ? ( OUI/NON )
VB est-il installé "à ton travail" ? (OUI/NON)

Si oui aux deux questions précédentes :
Les versions de VB sont-elles identiques ?
Messages postés
492
Date d'inscription
jeudi 5 avril 2007
Statut
Membre
Dernière intervention
2 juillet 2012
1
bonjour,
pour connaître les fichiers à joindre (dll, ocx, etc..) . Faire un début de "Package" et à un moment le compacteur t'affiche tout les fichiers et l'endroit où ils sont. Prendre note et les copier sur l'autre machine, l'exe devrait alors fonctionné.
A+
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
97
il ne suffira pas de les copier bêtement sur l'autre machine : certaines dll nécessite d'être enregistrées dans le registre (les ActiveX), et là sans les droits admins, c'est cuit !
Messages postés
6
Date d'inscription
mercredi 10 janvier 2007
Statut
Membre
Dernière intervention
14 avril 2010

Bonjour, Darsidious,

    Merci pour la rapide réponse. Oui, à la maison, non au travail. Ma question était plutôt mal rédigée. En fait, je me demandais si il était possible à partir d'un projet VB, de s'en servir dans une autre application (access ou Excel ou ...) sans avoir à installer VB sur mon PC au travail ni en utilisant un exécutable.

Merci encore

Bonne journée

Chordially
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
97
heu... tu parle de VB6 ou VBA là ???
Messages postés
4531
Date d'inscription
dimanche 29 septembre 2002
Statut
Modérateur
Dernière intervention
22 avril 2019
8
A ouai il y a comme un gros melange entre exe, code , programme, dll... remarque c'est pas evidant pour tout le monde.


Explique deja ce que tu veux faire au final avant de te lancer dans des questions theoriques.

La solution est peut etre plus simple que ce que l'on pourrait imaginer.


@+

E.B.
Messages postés
6
Date d'inscription
mercredi 10 janvier 2007
Statut
Membre
Dernière intervention
14 avril 2010

Bonjour, Darksidious, (désolé d'avoir écorché ton nom)

J'ai effectivement utilisé indistinctement les termes vb et vba. Par contre, je ce que je voulais savoir, c'est si le projet en VB6 peut être enregistré autrement que sous forme d'exécutable, de façon à pouvoir l'utiliser sur un PC qui ne dispose pas de VB6 installé, et sur lequel je ne peux pas faire d'installation.

Merci encore d'essayer de comprendre et de répondre.

Chordially
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
97
Je ne pense pas : un programme pour pouvoir être utilisé doit être compréhensible par la machine.

Donc soit il est compilé en code natif binaire directement lisible par la machine (ASM, C, C++, etc.) soit il est interprêté par une machine virtuelle qui se charge de traduire le code en langage machine (vb, .net, java, python, etc.).

Pour vb6, il faut au strict minimum que les runtimes de VB soient installés (je dit bien au minimum !).
Messages postés
3874
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
10
Salut,

En VB6 (Version pro), on peut compiler vers du langage machine (natif dans les options) même si la machine virtuelle reste nécessaire (Le code machine enchaîne de grandes quantité d'appels vers la machine virtuelle, une des principales causes des mauvaises performances de VB6). Même quand on compile du VB6 vers du pseudo code, à ce que j'ai pu constater, le début de l'exe est aussi en langage machine (Le lancement de l'interpréteur quoi.).

La machine virtuelle est surtout contenue dans msvbvm60.dll, qui se trouve généralement dans system32. Je n'ai jamais eu l'occasion de vérifier, mais il me semble qu'il est présent sur tout PC sous Windows XP qui se respècte.

A part ça, au minimum, il faut aussi surtout vb6fr.dll, qui celle là n'est pas présente à moins qu'une appli VB6 soit déjà installée. Mais contrairement à msvbvm60, cette dll ne demande pas de procédure d'installation (regsvr32 ou autre).

Donc si tu fais une copie de ton exe et de ton vb6fr.dll, et que tu mets les deux dans un même dossier dans un PC XP, que tu double cliques sur l'executable, ça devrais tourner sans problème.

A condition comme dit plus haut que tu es pas utiliser de ocx ou dll supplémentaires.

Sinon, il y a les manifest :
http://www.vbfrance.com/code.aspx?ID=28387
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
97
j'adore le "sans problème"
Messages postés
3874
Date d'inscription
mardi 8 mars 2005
Statut
Modérateur
Dernière intervention
7 novembre 2014
10
Comment ça il te pose un problème mon "sans problème" ?

On peut même aller plus loin et virer cette dépendance qui ne contient que la traduction des messages d'erreur en français.
Messages postés
6
Date d'inscription
mercredi 10 janvier 2007
Statut
Membre
Dernière intervention
14 avril 2010

Messieurs, Messieurs...

Soyez tous deux remerciés, pour commencer, de vos implications respectives à ce forum. Je prends note de la solution proposée  par rt 15 ; je demanderai l'aide d'un de mes amis technicien pour la tester. Il va sans dire que je croyais au GigaPapaNoël, mais je ne désespère pas.


Alors, Souriez, c'est pas taxable !


 


Chordially
Messages postés
40
Date d'inscription
mardi 4 octobre 2005
Statut
Membre
Dernière intervention
2 mars 2009

Tu peux sauver ton projet sous forme Projet.vbp et Form1.frm
dans ce cas il ne Fonctionnera qu'avec l'environnement VB6

Tu peux faire un EXE qui marchera sur tous lex PC administrateurs ou Non
en plaçant Vb6fr.dll et Msvbvm60.dll dans le même dossier que l'EXE

Vb6fr.dll et Msvbvm60.dll sont dans C:\Windows\System32 quand VB6 est installé
si tu n'y a pas accés, tu peux les trouver sur le net