Changer l'icône d'un exécutable[c++/dev-cpp]

0/5 (20 avis)

Vue 28 573 fois - Téléchargée 3 330 fois

Description

Ce code permet de changer l'icône d'un executable(n'importe lequel sauf lui-même !!) . Une boite de dialogue vous demande de selectionner l'exe puis l'icône( . Si un fichier icône contient plusieurs icônes, ce programme choisi automatiquement la première(à améliorer) .

Source / Exemple :


voir le zip

Conclusion :


Ce code utilise les fonction de windows pour cherchcer et updater les ressource . De plus, le format d'une icône en ressource est un peu différent de celui du fichier piusqu'il continent uniquement la structure ICONIMAGE définit dans le fichier source .

A améliorer:
-une vrai interface
-sélection de l'icône s'il y en a plusieurs dans le fichiers
-permettre de visionner l'icône à changer et de la sauvegarder

Codes Sources

A voir également

Ajouter un commentaire Commentaires
youpiyoyo Messages postés 539 Date d'inscription vendredi 6 juin 2003 Statut Membre Dernière intervention 14 juillet 2010
26 août 2004 à 22:01
j'avais fais une source du meme styke ke la tienne mais moi ce ke je cherchais a faire c t changer les resources de mon propre prgm ki est entrain de tourner...
la source etais grafik et com la tienne mais en api win32, et je me demande meme si c pas toi ke j'ai aidé dans le forum car kelk'1 m'avais posé des kestions a ce sujet, et c peut etre toi... ki c en revanche j'ai abandonner ma source car mank de motiv pour perceverer, mais je sais ke c possible, car reshacker en ai capable...
Pamaury Messages postés 341 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 17 juin 2008 3
26 août 2004 à 23:35
(ce n'est pas moi que tu a aidé mais par contre ce post est cencé aidé celui du forum)
changer les ressource de son propre ex en cours de fonctionnement n'est pas possible(doc MSDN) ni même changer les ressource d'un exe en cours d'exécution(doc MSDN) . Je suis en train de le refaire en graphique mais j'ai un bug donc il faut patienter
sibi12 Messages postés 337 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 15 avril 2006
30 août 2004 à 02:22
Rien ne t'empeche d'aller trifouiller dans la memoire du process (API Write/ReadProcessMemory) voir meme envoyer un message Invalidate pour raffraichir une ressource afficher a l'ecran..enfin j'ai pas essayer mais ça doit etre possible...
Mais bon l'exe n'est pas modifier pr autant.tu px attendre la fin du process et le changer a ce moment la et pkoi pas essayer d'intercepter le lancement d'une seconde instance(Je ne sais pas si un API existe mais on peux imaginer une boucle sur les process existant)
Pamaury Messages postés 341 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 17 juin 2008 3
30 août 2004 à 10:05
Pour l'instant, j'essaye de changer tout court et c'est pas facile, de plus j'ai une abération . Si je conserve le handle sur le fichier, l'API crée automatiquement un fichier .temp qui est en fait l'exe modifié . Et en le renommant, je m'aperçoit que la modification est effective !!!!!!!!!!!!!!!!!!!!!! Mais si je détruit le handle sur l'exe(il est inutiles), les modification ne sont pas effective (snif mais j'y travaille surtout sur une nouvelle base encore plus solide ) Je sais que je vaios y arriver :; j'y suis presque .
sibi12 Messages postés 337 Date d'inscription jeudi 19 décembre 2002 Statut Membre Dernière intervention 15 avril 2006
30 août 2004 à 16:56
c'est vrai que c'est assez bizarre...verifie si le fichier le handle est fermer comme il faut. si tu donne le bout de code je peux peut-être jeter un oeil

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.