VC7 utilise des dll pour le c et c++ qui sont livrées par défaut avec windows.
Depend des options de compilation : il peut utiliser une bibliotheque statique, donc pas de dépendance de DLL.
VC7.1 utilise des dll différentes pour le c et le c++ (msvcrt71.dll et je sait plus quoi pour le c++), qui doivent etre livrées avec le prog si l'os de destination n'est pas XP
idem. Tu n'es pas forcé de livrer des DLL si tu compiles correctement ton programme (hop, ca alege le programme entier, car la DLL est grosse...)
Autre petite question, mais alors, comment StartupXP par exemple, si vous connaissez, fait pour tenire dans 77 824o alors qu'il utilise des fenetre, des onglets....
Y'a un truc qui m'échappe dans la programmation......
Il y a encore des personnes qui utilisent l'asm pour faire des progs ...
Il y a encore (et ca ne me choque pas) des personnes qui utilisent les bibliotheques win32 uniquement, sans bibliotheque standart C ou C++, donc programme limité au minimum. (+UPX bien sur...)
tonton wrote:
VC7 utilise des dll pour le c et c++ qui sont livrées par défaut avec
windows.
Depend des options de compilation : il peut utiliser une bibliotheque
statique, donc pas de dépendance de DLL.
VC7.1 utilise des dll différentes pour le c et le c++ (msvcrt71.dll et
je sait plus quoi pour le c++), qui doivent etre livrées avec le prog si
l'os de destination n'est pas XP
idem.
Tu n'es pas forcé de livrer des DLL si tu compiles correctement ton
programme (hop, ca alege le programme entier, car la DLL est grosse...)
Autre petite question, mais alors, comment StartupXP par exemple, si
vous connaissez, fait pour tenire dans 77 824o alors qu'il utilise des
fenetre, des onglets....
Y'a un truc qui m'échappe dans la programmation......
Il y a encore des personnes qui utilisent l'asm pour faire des progs ...
Il y a encore (et ca ne me choque pas) des personnes qui utilisent les
bibliotheques win32 uniquement, sans bibliotheque standart C ou C++,
donc programme limité au minimum.
(+UPX bien sur...)
VC7 utilise des dll pour le c et c++ qui sont livrées par défaut avec windows.
Depend des options de compilation : il peut utiliser une bibliotheque statique, donc pas de dépendance de DLL.
VC7.1 utilise des dll différentes pour le c et le c++ (msvcrt71.dll et je sait plus quoi pour le c++), qui doivent etre livrées avec le prog si l'os de destination n'est pas XP
idem. Tu n'es pas forcé de livrer des DLL si tu compiles correctement ton programme (hop, ca alege le programme entier, car la DLL est grosse...)
Autre petite question, mais alors, comment StartupXP par exemple, si vous connaissez, fait pour tenire dans 77 824o alors qu'il utilise des fenetre, des onglets....
Y'a un truc qui m'échappe dans la programmation......
Il y a encore des personnes qui utilisent l'asm pour faire des progs ...
Il y a encore (et ca ne me choque pas) des personnes qui utilisent les bibliotheques win32 uniquement, sans bibliotheque standart C ou C++, donc programme limité au minimum. (+UPX bien sur...)
kanze
Fabien LE LEZ wrote:
On Mon, 25 Jul 2005 15:03:38 +0200, Arnaud Meurgues :
Je ne sais pas si quelqu'un a déjà regardé la taille d'un Hello World écrit en Eiffel...
À l'opposé, un "Hello World!" prend 12 octets en PHP ;-) [Bon, évidemment, si on compte l'interpréteur, ça fait un peu plus...]
En fait, à cet égard, je crois qu'on pourrait considérer l'interpréteur un peu comme un objet chargé dynamiquement, non. Il ne se trouve pas dans le fichier exécutable de ton programme, mais pour que ton programme tourne, il faut qu'il soit présente quelque part sur le système, et pendant que ton programme tourne, il est bien en mémoire.
Et en fait, j'imagine que la raison principale derrière ces différences, c'est que VC++ utilise d'avantage d'objets dynamiques, où g++ fait de l'édition de liens statiques. (Sous Linux, avec g++ 3.4.0, helloworld passe de 7 Ko à 4 Mo en précisant static. Pour dire que ça peut faire une différence.)
-- James Kanze GABI Software Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Fabien LE LEZ wrote:
On Mon, 25 Jul 2005 15:03:38 +0200, Arnaud Meurgues
<news.arnaud@meurgues.non.fr.invalid>:
Je ne sais pas si quelqu'un a déjà regardé la taille d'un
Hello World écrit en Eiffel...
À l'opposé, un "Hello World!" prend 12 octets en PHP ;-) [Bon,
évidemment, si on compte l'interpréteur, ça fait un peu
plus...]
En fait, à cet égard, je crois qu'on pourrait considérer
l'interpréteur un peu comme un objet chargé dynamiquement, non.
Il ne se trouve pas dans le fichier exécutable de ton programme,
mais pour que ton programme tourne, il faut qu'il soit présente
quelque part sur le système, et pendant que ton programme
tourne, il est bien en mémoire.
Et en fait, j'imagine que la raison principale derrière ces
différences, c'est que VC++ utilise d'avantage d'objets
dynamiques, où g++ fait de l'édition de liens statiques. (Sous
Linux, avec g++ 3.4.0, helloworld passe de 7 Ko à 4 Mo en
précisant static. Pour dire que ça peut faire une différence.)
--
James Kanze GABI Software
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
On Mon, 25 Jul 2005 15:03:38 +0200, Arnaud Meurgues :
Je ne sais pas si quelqu'un a déjà regardé la taille d'un Hello World écrit en Eiffel...
À l'opposé, un "Hello World!" prend 12 octets en PHP ;-) [Bon, évidemment, si on compte l'interpréteur, ça fait un peu plus...]
En fait, à cet égard, je crois qu'on pourrait considérer l'interpréteur un peu comme un objet chargé dynamiquement, non. Il ne se trouve pas dans le fichier exécutable de ton programme, mais pour que ton programme tourne, il faut qu'il soit présente quelque part sur le système, et pendant que ton programme tourne, il est bien en mémoire.
Et en fait, j'imagine que la raison principale derrière ces différences, c'est que VC++ utilise d'avantage d'objets dynamiques, où g++ fait de l'édition de liens statiques. (Sous Linux, avec g++ 3.4.0, helloworld passe de 7 Ko à 4 Mo en précisant static. Pour dire que ça peut faire une différence.)
-- James Kanze GABI Software Conseils en informatique orientée objet/ Beratung in objektorientierter Datenverarbeitung 9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
Ces chiffres ne sont pas très parlants si tu ne nous dit pas avec quelles options tu compiles. En tout cas pour VC, on peut obtenir des choses beaucoup moins grosses. Avec VC8 beta, j'obtiens 44 544 octets en liant statiquement la librairie MFC et 5 632 octets en liant dynamiquement. (oui, je sais qu'il n'y a rien de MFC dans le programme, je n'ai pas d'explications moi-même.)
Voir cette page pour quelques trucs: http://www.catch22.net/tuts/minexe.asp (il y a des techniques un peu extrêmes, mais ça vaut le coup de le lire)
Autre petite question, mais alors, comment StartupXP par exemple, si vous connaissez, fait pour tenire dans 77 824o alors qu'il utilise des fenetre, des onglets....
Ces chiffres ne sont pas très parlants si tu ne nous dit pas avec
quelles options tu compiles.
En tout cas pour VC, on peut obtenir des choses beaucoup moins grosses.
Avec VC8 beta, j'obtiens 44 544 octets en liant statiquement la
librairie MFC et 5 632 octets en liant dynamiquement. (oui, je sais
qu'il n'y a rien de MFC dans le programme, je n'ai pas d'explications
moi-même.)
Voir cette page pour quelques trucs: http://www.catch22.net/tuts/minexe.asp
(il y a des techniques un peu extrêmes, mais ça vaut le coup de le lire)
Autre petite question, mais alors, comment StartupXP par exemple, si
vous connaissez, fait pour tenire dans 77 824o alors qu'il utilise des
fenetre, des onglets....
Ces chiffres ne sont pas très parlants si tu ne nous dit pas avec quelles options tu compiles. En tout cas pour VC, on peut obtenir des choses beaucoup moins grosses. Avec VC8 beta, j'obtiens 44 544 octets en liant statiquement la librairie MFC et 5 632 octets en liant dynamiquement. (oui, je sais qu'il n'y a rien de MFC dans le programme, je n'ai pas d'explications moi-même.)
Voir cette page pour quelques trucs: http://www.catch22.net/tuts/minexe.asp (il y a des techniques un peu extrêmes, mais ça vaut le coup de le lire)
Autre petite question, mais alors, comment StartupXP par exemple, si vous connaissez, fait pour tenire dans 77 824o alors qu'il utilise des fenetre, des onglets....