Avec le débogage, vous pouvez lire et écrire directement à partir du disque dur. C'était une procédure très compliquée et risquée.
Fondamentalement, ce que vous aviez à faire est de trouver l'enregistrement d'amorçage pour localiser la table d'allocation de fichiers (FAT) que vous avez besoin pour vous restaurer le fichier à partir. Ensuite, vous localiser le premier cluster du fichier sur le lecteur ainsi que la taille du fichier à partir des entrées de fichier. Une fois que vous avez connu le premier bloc et la taille, vous espérez que le fichier n'a pas été fragmenté ou écrasé et pourrait simplement extraire l'information là-bas.
Il y avait aussi une application de suppression qui pourrait le faire automatiquement pour vous.
Aujourd'hui, tout cela peut être fait en utilisant :: CreateFile() sur le chemin du volume \\.\C:
et en utilisant le handle de :: ReadFile() directement à partir du volume. Le taux de réussite est particulièrement élevé si vous savez exactement à quoi ressemble l'en-tête du fichier, vous pouvez alors très facilement rechercher secteur par secteur pour cet en-tête spécifique et espérer que le fichier n'est pas fragmenté ou écrasé. Ensuite, vous pouvez simplement lire les informations directement à partir du lecteur et le vider dans un nouveau fichier. Il n'est pas nécessaire de manipuler le système de fichiers.
Si le fichier est fragmenté avant la suppression, il est probablement parti pour de bon parce que vous n'avez plus les informations pour localiser toutes les références du fichier, sauf peut-être le premier groupe.
c'est un peu hardcore. Je n'ai jamais entendu parler de déboguer être capable de restaurer un fichier qui a été supprimé. –
Je suis simplement curieux. Une petite expérience basée sur un vague souvenir. Je ne veux pas développer une nouvelle application "UnErase" en utilisant debug.exe: D – vobject