Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1355 connectés 

  FORUM HardWare.fr
  Programmation

  Comment cree unexe vb6 sans besoin des dlls ???

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Comment cree unexe vb6 sans besoin des dlls ???

n°34572
satirik
Posté le 27-05-2001 à 01:00:49  profilanswer
 

Bon j'en ai marre de vb c'est cool mais fo tj les dlls qui lourdes bon alors si kke avait une solution ...(blague debile du genre fait en delphi ou en c++ s'abstenir) et je veut une verritable solution, pas du genre :
ben tu bind ton fichier vb exe avec els dlls vb6 a l'aide d'un logiciel de bindage paske cte solution elle pese minimum 1Mo ce ki est un peu lourd sans compter le reste ...

mood
Publicité
Posté le 27-05-2001 à 01:00:49  profilanswer
 

n°34574
brascoo
Posté le 27-05-2001 à 01:29:05  profilanswer
 

C completement debile ta kestion.
Reflechi un peu si il y a des dll qui traine avec ton exe fait en VB , c'est que justement ton exe en a besoin. Comment tu veux faire autrement ? la vraiment je vois pas, a moins que tu re developpe a ta sauce Visual Basic ...
 
Et j'ajouterai de plus que effectivement , un programme fait en Delphi et encore mieux en C/C++ ne posera plus ce pb des dlls de merd.. Alors au lieu de chercher des solutions a un pb ki n'en a pas, tu ferai mieux d'apprendre le C/C++...
 
Br@scoo

n°34577
End-i
Posté le 27-05-2001 à 07:52:10  profilanswer
 

effectivement, tu peux pas créer un .exe en VB qui n'utilisera pas les DLL de VB  :(  
(vbrun.dll" je crois)
 
et si tu veux ne pas avoir de dll requis avec ton programme, change de langage de programmation  :D

n°34578
haahhahaha​ha
Posté le 27-05-2001 à 08:30:14  profilanswer
 

ya que vbrun, ta aussi plein d'autre truc a la con qui fond 1Mo.
pas cool pour distrib ca :D  
 
C++ rulleeeeeeeeeeeeeeeeeeeeeeeeeeeeezzzzzzzzzzzzzzz


---------------
haahhahahaha == TheJackal
n°34609
satirik
Posté le 27-05-2001 à 16:28:34  profilanswer
 

Evidemment a par que apprendre le c++ tout seul ca peut etre vachement long et j'ai pas que ca a faire ce ki serai bien c au moin un compilateur avec l'option integre les dlls vb6

n°34656
Doudos
Guns 4 Show Knives 4 a Pro
Posté le 27-05-2001 à 23:08:10  profilanswer
 

Avec Microsoft Visual Basic 6 tu peux integrer toutes les dll dont tu as besoin (avec l'editeur de ressources) pour ke ton programme tourne tout seul ...
Mais bon ... cette solution n'est pas top puisque ton programme va prendre bcp de poids d'un coup ... tu peux atteindre plusieurs Mo !! :(

n°34731
trictrac
Posté le 28-05-2001 à 11:23:01  profilanswer
 

le probleme viens du fais qu'il me semble que basic est un language interpreter, et non compiler (contrairement au C).. donc le .exe generer n'est pas exploitable comme tel, et abesoin de vbrun60.exe pour 'se faire interpreter', 'est pour ca qu'une application ecrite en VB est bien plus lente qu'une en C ou autre.. depassé la 20taine de forms.. ca commence a ramer a mort
 
Quand a la solution 'integrer les Dll dans l'exe.. quel interet, car il integre toute la dll, et donc tu alourdi ton progrmme pour rien, sans jamais opuvoir te debarasser de vbrun**.dll

 

[edit]--Message édité par trictrac--[/edit]

n°34851
Mandrix
Posté le 28-05-2001 à 16:13:03  profilanswer
 

Depuis VB5 & 6, VB n'est plus interprété (contrairement à avant).
Il est bien compilé en code natif, mais tout ce code natif repose sur un RunTime (Une machine virtuelle comme pour Java)
Exemple, pour créer une fenêtre, il utilise les fonctions précompilées (et normalement sécurisées) du VBRuntime.
 
La seule solution, c'est effectivement le C++ (ou autre du même type)
 
NOTE : Pour des raisons d'interopérabilité, la tendance actuelle (du moins chez Microsoft), c'est de tout faire reposer sur un runtime (cf. .Net Framework). Même VisualC++.Net exploite un Runtime QUI FAIT PLUS DE 100 Megs
(On peut bien entendu travailler en prog Win32 classique, mais la brêche est ouverte)
 
Alors désolé pour les anti-machine virtuelle, mais c'est mal barré pour vous les gars :o)

n°34862
trictrac
Posté le 28-05-2001 à 16:34:29  profilanswer
 

tu es sur de ce que tu dis en ce qui concerne le fait que VB ne soit plus interprter, car j'ai un bouquin pour VB6 qui dit que vb est interpreter, et que c'est a ca que sert vbrun**.dll : a pouvoir interpreter un programme sans avoir besoin de VB.
Et s'il faut le compiler en .exe, c'est effectivement pour le metre en code natif.. mais uniquement pour que le systeme puisse le lancer et sache que c'est un exe.... mais il fait ensuite appel a la dll pour exploiter tout le reste du code, a savoir toutes les fonctions que tu as ecrites

n°34942
HelloWorld
Salut tout le monde!
Posté le 28-05-2001 à 18:27:39  profilanswer
 

tu l'as eu où ce bouquin ?
VB5 + 6 ne sont plus interprétés, c'est une certitude ... les dll gerent contiennent tout plein de fonctions (convertion, gestion fenetres + fichiers ...) et donc quand tu fais un open il va utiliser sa dll de m***e pour ouvrir le fichier mais si tu fais un for bidule next ca sera du vrai code executé ...
 
j'aimerais savoir moi : quand il se produit une erreur genre "fichier deja ouvert", bref une erreur fatale, c'est la dll qui gere ca ou l'exe ? :??:


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
mood
Publicité
Posté le 28-05-2001 à 18:27:39  profilanswer
 

n°34953
Kyle_Katar​n
Posté le 28-05-2001 à 19:41:01  profilanswer
 

La runtime principale s'appelle MSVBVM60.dll (MSVBVM50.dll pour VB5) qui signifie MicroSoft Visual Basic Virtual Machine. A mon avis c'est interprété ...

n°34982
karlkox
Posté le 28-05-2001 à 22:19:37  profilanswer
 

Je développe sur VB depuis la version 3.0, depuis la 5.0 VB est COMPILE ! Content ou pas, c'est un fait, j'ajouterais comme information que le compilateur est le meme (ou presque) que celui de visual c++, il convertit au vole (Smart Linking) les données, tokens, bytes et aures joyeusetées. Le bouquin que tu as lu est a jeter tout simplement. D'ou je tient mes propors ? de la msdn (avril 2000), qui explique clairement ce qu'est le P-Code (option de compilation natif pour VB entre autre).
 
Kyle>Visual C++ a besoin de Msvcirt.dll (Microsoft visualC++ Reuntime Librairie), le C++ est il interprete pour auant ? ;)

n°35038
trictrac
Posté le 29-05-2001 à 08:49:01  profilanswer
 

d'apres mon bouquin mon bouquin: vb6 chez Sybex:
microsoft proclame que vb poduit du code natif [...] mais la realite est bien moins enthousiasmante
 
Karl> "[...] les programmes ainsi obtenus sont plus rapides que leur PREDECESSEURS, compiles eux en P-Code ..."
 
Donc pas de P-Code a la compilation... mais la presence d'une VM implique la presence d'un programme non executable directement sur le systeme (sans doute interpreter, j'insiste et je signe) tout comme java. En revanche, Msvcirt.dll n'a rien d'une VM, mais contient des fonctions que VC++ niclut tout seul dans le code, et qu'il doit bien aller chercher qqpart sans alourdir chaque programme.

n°35076
HelloWorld
Salut tout le monde!
Posté le 29-05-2001 à 10:19:58  profilanswer
 

chope WinDASM et dessassemble un programme VB, tu vas voir s'il est interprete.
interpretation = perte de temps enOrme.
d'ailleurs, lors ds comparaisons VB3 avec Delphi, le 2° etait 20 fois plus rapide que le 1° :crazy:
donc ben microsoft ils se sont dit "Ouh la, faut p'tet faire qq chose" et les prog VB ne sont plus interpretes.
je pense que ton bouquin veut dire que le code généré par VB est truffé (j'ai déssassemblé et constaté) d'appels à la dll.
mais je pense pas que ces appels ralentissent.
ces dll contiennent un max de fonction, tout comme ces fonctions seraient dans ton exe dans le cas du C si tu utilisait printf ou autre.
sauf que la ben printf il est dans le dll.
une ligne du genre open "fichier"  genere plein d'appels à la dll : car "fichier" n'est pas un chemin valide et VB va faire plein de manip sur ta chaine ...
ou alors UnEntier = val(UneString) va aussi générer plein d'appels à la dll pour convertir etc ...
 
"mais la presence d'une VM implique la presence d'un programme non executable directement sur le systeme (sans doute interpreter, j'insiste et je signe) tout comme java"
ben oui, si ta pas ta dll, ton programme il est pas executable
mais tu as bien un exe autonome, qui utilise les fonctions mises à disposition par la dll ...
 
enfin, je commence à n'etre plus sûr de rien ...
 
par contre si qq'un pouvais répondre à ma question concernat la gestion des erreurs ...


---------------
FAQ fclc++ - FAQ C++ - C++ FAQ Lite
n°35124
trictrac
Posté le 29-05-2001 à 11:23:21  profilanswer
 

par defaut, c'est la dll qui gere ca, a moins que tu intercepte l'erreur, auquel cas la dll renvoie le traitement de l'erreur vers ton programme.. si j'ai bien compris ce que tu demande


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  Comment cree unexe vb6 sans besoin des dlls ???

 

Sujets relatifs
Problème de Variables sous VB6besoin d'aide
[VB6] Forcer la sortie d'une procédurebesoin d'aide Base de Données PHP & ASP
[VB6] rafraichir une fenetre iexplore a partir de visual basic !!!VBScript VB6 FileSystemObject
[VB6] Attaque d'office 2000 (notemment Access 2000) depuis VB[VB6] Enregistrer une page web ?
Help --> Besoin d'un Tetris en C++Mise en page avec Netscape: besoin d'aide !
Plus de sujets relatifs à : Comment cree unexe vb6 sans besoin des dlls ???


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR