dlls + exe => exe (unique)
Répondre à la discussion
Affichage des résultats 1 à 22 sur 22

dlls + exe => exe (unique)



Vue hybride

  1. #1
    invite1ede059e

    Lightbulb dlls + exe => exe (unique)

    Bonsoir a tous!
    j'ai une question
    Est il possible de rassembler en un bloc une application ??
    je m'explique pour firefox par exemple, il y a firefox.exe + les dll + pleins d'autres trucs et je voudrais savoir s'il est possible de "compresser le tout" dans une unique application ou executable (je ne parle pas de .zip ou .rar ni d'autoexecutable) mais de rassembler le tout en un unique executable qui lancerait le programme normalement.
    Je vous remercie

  2. #2
    invite58a3c88f

    Re : dlls + exe => exe (unique)

    Bonjour Memnom,
    Ta question est pour le moins saugrenue. En effet, lorsque les auteurs de logiciels écrivent leurs programmes, c'est avec l'idée de pouvoir continuer à le développer le plus facilement possible.
    Pour ce faire, ils morcèlent leurs paquets de lignes de code (des centaines de milliers !) en plusieurs blocs qui auront des extentions particulières qui aideront à reconnaître les types de "paquets".
    Chaque "paquet" sera un ensemble d'outils spécifiques à une action ou un groupe d'actions. La mise à niveau d'un tel groupe d'action sera aisée puisqu'il y a relativement peu de lignes de code à modifier.
    Si un programme était écrit en un seul "paquet", je te laisse imaginer les problèmes pour retrouver une partie du code et la modifier.

    Cette manière de programmer permet également de créer des programmes qui peuvent tournenr sur différentes configurations matérielles simplement en allant chercher le/les "paquets" indispensables et en omettant d'installer les autres. c'est autant de pace gagnée sur le disque dur de l'utilisateur.

    Pour répondre à ta question : sauf si tu as le code source, c'est-à-dire le listing complet qu'a écrit le créateur du programme, il t'est impossible de recréer un programme contenant tous les fichiers annexes nécessaires à son bon fonctionnement.

    Si un langage comme le C, mais bien d'autres également, ont développé des méthodes de codages dites "orientée objet", c'est justement pour faciliter le travail de codage mais aussi celui de la maintenance et de la mise à niveau des logiciels. Il est plus aisé de s'y retrouver dans dix "petits" programmes que dans un seul énorme.

    A+

  3. #3
    invite69d38f86

    Re : dlls + exe => exe (unique)

    Bonjour,

    J'imagine que la question avait un but pratique par exemple pour une sauvegarde de programme. Comment s'assurer qu'on a pas oublié une dll dans un coin perdu!

  4. #4
    invite58a3c88f

    Re : dlls + exe => exe (unique)

    Bonne question, je vous remercie de l'avoir posée.

    Mais aussi comment savoir quels sont les fichiers inscrits sur le disque dur lors de l'installation d'un programme et comment savoir quelles dll ont été modifiées ?

    Là, c'est la boite à malices !

  5. A voir en vidéo sur Futura
  6. #5
    invite1ede059e

    Re : dlls + exe => exe (unique)

    Bonjour a tous!
    Merci pour tes explications Papy Octet.
    Wii c'est d'ordre pratique, c'est pour avoir tout dans un seul endroit. Donc, si j'ai bien compris, il est impossible de tout rassembler sauf si j'ai les codes sources...j'avais penser à une double compilation... la premiere faite par les programmeurs, avec des fichiers morcelés puis une autre au dessus pour rassembler tout ça.

  7. #6
    invite4ad25ccf

    Re : dlls + exe => exe (unique)

    Pour répondre à ta question : sauf si tu as le code source, c'est-à-dire le listing complet qu'a écrit le créateur du programme, il t'est impossible de recréer un programme contenant tous les fichiers annexes nécessaires à son bon fonctionnement.
    Si c'est possible, et heureusement. Sinon comment ferait le système d'exploitation pour tout charger en mémoire et mapper les bonnes adresses des DLL ?

    Après ce n'est clairement pas une opération triviale. La maniere de le faire que je vois (sans réfléchir à la propreté) :
    - parcourir la table d'import de l'executable pour rechercher les DLLS.
    - faire un bete copier / coller des dll dans des nouvelles sections de l'executable (1 section = 1DLL)
    - développer un code qui hook le chargement de DLL, et qui au lieu de demander à windows de charger la DLL XXX s'occupe de la récupérer dans la bonne section, la mappe en mémoire et la patch à chaud pour corriger les adresses.

    Ca pourrait être un petit projet bien fun, je vais garder ca dans un coin de ma tête

    Sinon l'un des gros interet des DLL, c'est de ne pas avoir le meme code chargé 36000x en mémoire : chaque DLL est chargée une seule fois en mémoire. Si un composant veut par exemple afficher une page html en utilisant le moteur de rendu de IE, il ne va pas charger IE.dll (ou quelque soit son nom) si celui-ci est déjà en mémoire (ce qui est souvent le cas )

  8. #7
    invite1ede059e

    Re : dlls + exe => exe (unique)

    et c'est quoi le code?? Il est en quoi??java, C, C++...?

  9. #8
    invite4ad25ccf

    Re : dlls + exe => exe (unique)

    Euh, je comprend pas ta question la.
    Le code de quoi ?

  10. #9
    invite1ede059e

    Re : dlls + exe => exe (unique)

    Citation Envoyé par Towl Voir le message
    développer un code qui hook le chargement de DLL, et qui au lieu de demander à windows de charger la DLL XXX s'occupe de la récupérer dans la bonne section, la mappe en mémoire et la patch à chaud pour corriger les adresses.
    ce code la
    Dernière modification par yoda1234 ; 26/06/2008 à 06h21. Motif: Réparation balise Quote

  11. #10
    invite4ad25ccf

    Re : dlls + exe => exe (unique)

    java, C, C++...?
    Aucun de ceux la en assembleur, avec possibilité d'écrire quelques bout de code en C

  12. #11
    invite1ede059e

    Re : dlls + exe => exe (unique)

    ah...
    en effet la je ne sais vraiment pas faire...
    On fait comment??

  13. #12
    invite4ad25ccf

    Re : dlls + exe => exe (unique)

    Hum... honnêtement ? pas facile.

    Faut avoir de bonnes connaissances du C coté programmation systeme, bien connaitre le fonctionnement de l'OS (chargement de dlls, format de l'executable), avoir une de bonnes notions de l'assembleur x86...

    Et puis faut beaucoup lire les articles liés à ce sujets, lire les codes correspondant (ne pas avoir peur de lire les blogs chinois, on comprends rien à ce qu'ils disent, mais leur code est tres propre et compréhensible)..

    Bref, ca se fait pas comme ca du jour au lendemain

  14. #13
    invite1ede059e

    Re : dlls + exe => exe (unique)

    Citation Envoyé par Towl Voir le message
    Hum... honnêtement ? pas facile.

    Faut avoir de bonnes connaissances du C coté programmation systeme, bien connaitre le fonctionnement de l'OS (chargement de dlls, format de l'executable), avoir une de bonnes notions de l'assembleur x86...

    Et puis faut beaucoup lire les articles liés à ce sujets, lire les codes correspondant (ne pas avoir peur de lire les blogs chinois, on comprends rien à ce qu'ils disent, mais leur code est tres propre et compréhensible)..

    Bref, ca se fait pas comme ca du jour au lendemain
    J'ai quelques connaissances en C mais le reste... bon je pense que c'est hors de portée pour moi pour le moment

    Merci de m'avoir répondu

Discussions similaires

  1. ntoskrnl.exe
    Par invite37286c57 dans le forum Internet - Réseau - Sécurité générale
    Réponses: 1
    Dernier message: 05/04/2007, 06h02
  2. Iexplore.exe
    Par inviteddd1e70d dans le forum Internet - Réseau - Sécurité générale
    Réponses: 31
    Dernier message: 13/04/2006, 15h09
  3. Javac.exe
    Par invite62588872 dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 19/09/2005, 17h27
  4. wmplayer.exe
    Par invite56822129 dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 06/10/2004, 08h11
  5. wuauclt.exe
    Par invite1959eb9d dans le forum Logiciel - Software - Open Source
    Réponses: 6
    Dernier message: 26/08/2004, 13h30
Dans la rubrique Tech de Futura, découvrez nos comparatifs produits sur l'informatique et les technologies : imprimantes laser couleur, casques audio, chaises gamer...