L'écriture dans l'espace libre
Question
Je me demandais s'il est possible d'écrire à Freespace en C #? Je veux dire quelque chose comme FreeSpace.WriteAllBytes()
ou aime ce que certaines applications de broyage font?
Comment puis-je faire?
La solution
Si votre intention est simplement de remplacer tout l'espace libre disponible sur un disque dur, vous pouvez utiliser le
Autres conseils
Cette fonctionnalité spécifique ne se construit pas en C #, mais vous pouvez facilement écrire vous-même, par l'ouverture d'un fichier et l'écriture d'octets (0) dedans jusqu'à ce que le disque est à.
Prenez note des systèmes de fichiers limitera votre taille du fichier max .
Cela m'a travaillé pour obtenir l'espace libre d'un lecteur (C #), via System.Management
ManagementObject di = new ManagementObject("win32_logicaldisk.deviceid=\"C:\"");
di.Get();
UInt64 freeSpace = (UInt64)di["FreeSpace"]; //in bytes
Maintenant, vous pouvez écrire les fichiers nommés par System.Guid.NewGuid () pour remplir tout l'espace (utiliser un multiple de la taille de cluster du système de fichiers).