Pour les fichiers exécutables, la seule solution que je voie est de lire ton fichier à l'avance et de remplacer tous les caractères problématiques (EOF notamment) par un caractère quelconque. Par contre, je ne vois pas trop l'intérêt d'afficher un fichier exécutable tel quel...
Pour les fichiers supérieurs à 64ko, il me semble que le problème ne se pose plus sur Windows 2000 et XP. Par contre, pour les autres il faut gérer ça manuellement (càd n'afficher qu'une partie du fichier dans ton edit).
Un petit conseil : essaie d'utiliser des memory-mapped files, ça évite d'avoir à charger le fichier complètement avant de l'utiliser et permet d'économiser de la mémoire. Par contre, c'est bien évidemment plus compliqué à programmer.
---------------
each day I don't die is cheating