2009-02-28 10 views
4

Comment définir la propriété "Description" d'un exécutable? J'entends par là la valeur affichée lorsque vous cliquez avec le bouton droit sur un exécutable dans l'Explorateur Windows et affiche "Description:" avec ce qui semble être juste le nom de l'exécutable sans l'extension de fichier. Je cours GCC 3.4.5 (mingw-vista spécial r3) sur Windows XP.GCC sous Windows: Définir le champ "Description" de l'exécutable C?

J'ai fait des recherches sur Google en vain, mais j'ai le sentiment que je devrais utiliser un fichier de ressources avec windres ... suis-je sur la bonne voie au moins?

En fait, j'ai défini un nom personnalisé avec -o, mais je veux vraiment un nom différent.

+0

Du haut de ma tête, je pense que cette description est en effet une ressource. – Thomas

Répondre

8

Cette information provient d'une ressource d'informations de version. Les exécutables Windows peuvent contenir des fichiers de ressources incorporés dans ceux-ci. Normalement, avec Microsoft Visual Studio, vous créez un script de ressources (fichier .rc) et le compilateur de ressources Visual Studio le compilera dans l'exécutable pour vous. VS contient également un éditeur de ressources visuel pour éditer les différents types de ressources (tables de chaînes, icônes, bitmaps, curseurs, menus, boîtes de dialogue, informations de version, etc.).

Avec GCC, vous devrez créer le script de ressource vous-même. Voir MSDN pour plus d'informations sur le type de ressource VERSIONINFO. Une fois que vous avez créé un script de ressource valide, vous pouvez l'utiliser pour le compiler dans un fichier objet (.o). This page a un bon exemple de comment faire cela. Enfin, une fois que vous avez un fichier objet, il vous suffit de le lier avec le reste de vos fichiers objet comme d'habitude.

+0

Juste ce que je cherchais, merci. –

7

Oui, vous avez besoin d'un fichier de ressources.

  1. Pour plus d'infos sur l'écriture de votre propre fichier de ressources .rc (y compris votre FileDescription champ), voir: MSDN: VERSIONINFO Resource

  2. Pour lier un fichier de ressources en utilisant gcc, voir: "Setting icons [or any resource for Windows programs with gcc":

Les versions Windows de gcc (MinGW, Cygwin) sont fournies avec un outil appelé "windres". Cela va compiler les fichiers de ressources dans des fichiers objets que vous pourrez inclure à l'étape de liaison. A titre d'exemple simple, pour compiler le fichier « chocolat-doom-res.rc »:

windres chocolate-doom-res.rc chocolate-doom-res.o 

Cela vous donne un « .o » que vous pouvez facilement tomber dans votre construction, par exemple.

gcc other.o files.o etc.o chocolate-doom-res.o -o chocolate-doom.exe 
+0

Merci cpeterso, cette réponse fait aussi l'affaire, mais malheureusement, celui d'Adam R est venu en premier, donc je dois donner celui-ci comme accepté. Avoir upvoted le vôtre cependant. –