Norme et format Binhex

Résumé : Le format BinHex. Sa raison d'être. Ses origines. Son utilisation. Comment décoder les fichiers ? Comment placer des fichiers BinHex sur des supports Macintosh réels ou virtuels ?
 

Introduction

Le format BinHex a été inventé pour répondre à deux besoins. D'une part celui de coder sur 7 bits seulement le contenu des fichiers binaires (donc codés sur 8 bits), afin de leur permettre de transiter par les réseaux, dont certains ne supportent pas les octets de 8 bits, et par le courrier électronique, notamment. D'autre part celui de réunir les deux branches des fichiers Macintosh en un seul fichier.
Enfin, l'auteur de cette norme, Yves Lempereur, a rajouté une fonction de compression élémentaire, de type RLE, pour éviter de transmettre des séquences de plusieurs caractères identiques.

Comment reconnaître un fichier codé en BinHex ?

L'extension utilisée pour les fichiers BinHex est généralement HQX, mais on rencontre aussi fréquemment des fichiers sans extension. La signature de ces fichiers (sur un support HFS ou HFS+ [Macintosh]) est TEXTBNHQ.
De plus, la première ligne des fichiers codés en BinHex est la suivante :

(This file must be converted with BinHex 4.0)

Il suffit donc d'ouvrir le fichier dans un programme de traitement de textes pour l'identifier. Cette ligne est normalement facultative, mais nous n'avons jamais rencontré de fichiers BinHex qui ne la comportent pas. L'une des caractéristiques de ces fichiers est également que le flux de données utile doit commencer et finir par le signe deux-points (:).
Nous avons déjà vu des fichiers où la ligne ci-dessus n'était pas la première, mais la seconde. Nous avons également déjà vu des fichiers qui utilisaient comme marqueur de fin de ligne non pas la paire retour chariot + avance d'une ligne, mais l'un ou l'autre seulement, et même quelque fois les deux, mais dans l'ordre inverse.
Nos programmes ont été modifiés pour identifier correctement ces fichiers comme des fichiers BinHex et les traiter comme les autres qui sont plus conformes à la norme. Prenez contact avec nous pour une mise à niveau.

Quand peut-on rencontrer des fichiers BinHex ?

La norme BinHex est l'une des options (avec le format mime) de la plupart des logiciels de messagerie Macintosh. Ces programmes codent et décodent le format de manière transparente pour l'utilisateur. Toutefois, lorsque le courrier est échangé entre Mac et PC, il est possible que le logiciel de réception ne sache pas identifier ces fichiers et se contente de les stocker sur le disque dur.
Le format BinHex est également utilisé par certains programmes pour générer des fichiers Macintosh sur d'autres plates-formes. C'est notamment le cas de Flash, de Macromedia. Dans ce cas, la norme BinHex joue le même rôle que la norme MacBinary, le codage sur 7 bits n'ayant pas de justification technique.

Comment décoder les fichiers BinHex ?

Il existe un certain nombre d'utilitaires assurant le décodage des fichiers BinHex sur un PC. Ils ne se caractérisent généralement pas par leur souplesse ou par leur généralité. Les problèmes de fonctionnement que l'on peut rencontrer sont les suivants :

Traitement des fichiers BinHex dans MacDisk et MacImage

Lorsque vous sélectionnez un fichier BinHex pour le placer sur un support physique (avec MacDisk) ou dans un projet de CD-ROM (avec MacImage), ces programmes savent identifier le fichier et vous proposent donc de l'ouvrir et de le décomposer en ses différentes parties pour obtenir au résultat le fichier d'origine.
Les opérations sont donc pratiquement transparentes.
Faites l'essai en téléchargeant l'un de ces programmes depuis ce site.

MacMail

Par ailleurs, les fonctionnalités de décomposition sont également intégrées dans MacMail, un autre programme de notre gamme offrant un éventail de services étendu pour l'identification, la gestion, la conversion et le traitement des fichiers Macintosh envoyés en pièces jointes par le courrier électronique.
Voir sur la page de téléchargement.

DeBinHex

Nous avons enfin été amenés à créer un utilitaire autonome offrant ces fonctionnalités.
Notre utilitaire DeBinHex répond aux besoins que nous venons d'esquisser, et permet à l'utilisateur de connaître le contenu d'un fichier BinHex (nom Macintosh, signature du fichier, taille des données, taille des ressources) sans avoir à le décoder. Il permet ensuite, naturellement, de convertir le fichier (branche de données, branche de ressources ou encore les deux) ou de le transformer en fichier MacBinary (ce qui peut par exemple être utile si l'on veut replacer le fichier Macintosh sur un support Macintosh).
Cet utilitaire peut être téléchargé depuis ce site.
Son utilisation est gratuite pour les utilisateurs individuels. Dans ces conditions, il va de soi que nous ne pouvons pas assurer d'assistance technique.
Il est également mis gratuitement à la disposition des utilisateurs d'autres produits de notre gamme. Les entreprises souhaitant acquérir une licence d'utilisation à titre professionnel sont invitées à nous écrire.

Pour en savoir plus

Il existe un bon article sur la norme Binhex et son histoire sur Wikipedia (en anglais).
Le format Binhex a été et reste principalement utilisé autour du Macintosh, mais ses racines remontent plus loin. Voir cette page sur la Préhistoire du Binhex (en anglais).

 
Pierre Duhem (ex-Logiciels & Services Duhem)
3, rue Pierre Haret - F-75009 Paris (France) - Tél. (+33) [0]149 700 455
web : http://www.macdisk.com