# Icone de CD personnalisé, comment faire ?



## wintermute (28 Septembre 2006)

Bonjour,

j'ai déjà posté ce topic sur la partie customization, mais en l'absence de réponses, j'en déduis que j'aurais plus de chance dans cette partie.

En effet, je développe un photothèque sur CD, destinée à être vendue. Mon problème est de remplacer l'icone représentant un CD qui apparait au montage du disque par un icone fait maison.
J'ai lu de nombreuse explications de la manière de faire, mais il ne s'agit bien souvent que de paramétrer pour sa propre machine un icone personnalisé pour ce CD. 
Introduisez ce CD dans un autre mac, et vous n'aurez rien d'autre que l'icone classique d'un cdrom.
Il semble que la solution se trouve au niveau d'un fichier spécial caché, nommé .VolumeIcon.icns, qui devrait être présent sur la racine du cd. Ce fichier doit être un fichier icone de mac, par exemple créé avec IconComposer (ce que j'ai fait).
Malheureusement, en dépit de mes nombreux essais, il doit me manquer un élément dans la manip, car je n'ai jamais pu afficher ce damné icone personnalisé. 

Est-ce qu'il y a quelque chose à faire au niveau du resource fork ? Ou sont-ce des  caractéristiques graphiques particulières à respecter dans IconComposer ?  

Merci de votre aide !


----------



## wintermute (28 Septembre 2006)

Suite au peu de succès de mes deux précédent messages concernant l'attribution d'un icone personnalisé à un CD-rom, je reformule la question, comment, avec les commandes 'read', 'Rez' 'ditto', 'SetFile', fait-on pour gérer les resources fork, puisque là est la source du problème ? Je ne trouve aucun howto digne de ce nom sur ça, juste des informations éparses, entre les pages de man, des articles obscurs en anglais, des extraits de pages de codes imbitables... bref vaillant développeurs mac, s'il vous plait j'ai besoin d'aide...

Merci d'avance !


----------



## mpergand (28 Septembre 2006)

J'ai effectué la méthode décrite ICI

No problemo


----------



## Zeusviper (28 Septembre 2006)

icon composer ne gère pas les infos d'iconnes ics8 et icl8 nécessaire aux icones de volumes

utilises graphic converter par exemple pour créer ton fichier d'icone


----------



## pierrest (3 Octobre 2006)

Si tu utilises Toast 7 (sais pas si marche dans les versions pr&#233;c&#233;dentes) pour graver, un pomme I et simple copier coller fera l'affaire comme pour changer un icone dans ton syst&#232;me. L'icone est conserv&#233;e m&#234;me sur une autre machine.


----------



## wintermute (3 Octobre 2006)

Mais malheureusement, aucune des astuces proposées ne correspond à ma problématique : La création de ce CD doit être automatisée, de plus, je n'ai pas de budget pour acheter des logiciels tiers genre Toast. Il faut que j'arrive à mes fins avec les quelques outils mis à dispo par Apple, et les enchainer dans des scripts qui seront lancés depuis un site internet... Donc je dois vraiment arriver à comprendre ces outils en CLI que j'ai déjà cité plus haut. Enfin merci de votre aide.


----------



## mpergand (3 Octobre 2006)

Trouvé ça:

```
# Make a custom icon for the disk image
mv /Volumes/$APP_NAME/$APP_NAME.app/Contents/Resources/res/sipXdmg.icns /Volumes/$APP_NAME/.VolumeIcon.icns
echo "read 'icns' (-16455) \"/Volumes/$APP_NAME/.VolumeIcon.icns\";" | /Developer/Tools/Rez -o "/Volumes/$APP_NAME/Icon
"
/Developer/Tools/SetFile -a C /Volumes/$APP_NAME
/Developer/Tools/SetFile -a V "/Volumes/$APP_NAME/Icon
```

Il faut positionnner le bit custom icon à 1:
C | c    Custom icon (allowed on folders)

http://www.hmug.org/man/1/SetFile.php


----------



## wintermute (3 Octobre 2006)

Merci. En fait, j'ai déjà trouvé cet exemple, mais il n'a pas contribué à éclairer ma lanterne, malheureusement. Quels sont les rôles des différentes commandes ? A quoi sert ce "read 'icns' (-16455) "chemin vers l'icone" ? Qu'est ce que cette commande "Rez" en fait  ? Pourquoi produire un fichier /Icon résultant si on a déjà un fichier icone .VolumeIcon.icns ? Et ces deux commandes setFile, euh what's the point ? Franchement je ne sais pas vous, mais pour moi c'est vraiment incompréhensible, pitié ne me dites pas d'aller lire les man, c'est fait, et c'est tout sauf compréhensible par un humain moyen comme moi...
Bon je garde espoir. Le sujet reste ouvert, ça servira pour bien des gens je pense quand on aura trouvé.


----------



## mpergand (3 Octobre 2006)

Ca a march&#233; du premier coup  

```
Name="Essai"

# cr&#233;ation d'une image disque de 5Mo nomm&#233; 'image.dmg' dans le r&#233;pertoire courant
# nom du volume: Essai
hdiutil create image -megabytes 5 -volname $Name -fs HFS+
hdiutil mount image.dmg
#pwd

# faire la copie des fichiers + le fichier .VolumeIcon.icns

/Developer/Tools/SetFile -a C /Volumes/$Name

#gravage
hdiutil burn image.dmg -noverifyburn -noeject

#hdiutil unmount /volumes/$Name
```


----------



## wintermute (5 Octobre 2006)

Oui ca m'a tout l'air d'être ce qu'il me faut, je vais tester ça de ce pas, merci !


----------

