Dans mon projet, je dois créer des fichiers temporaires dans un périphérique USB que je veux supprimer à la fermeture. J'ai donc utilisé un code commeFileStream avec DeleteOnClose Option de fichier
this.fcommandHandler = new FileStream(TempFileName,
FileMode.CreateNew, FileAccess.ReadWrite,
FileShare.ReadWrite, 512, FileOptions.DeleteOnClose);
Cela fonctionne très bien. Mais le problème est que je veux utiliser un FileOption de plus, comme Pas de mise en mémoire tampon.
private const FileOptions FILE_FLAG_NO_BUFFERING = (FileOptions)0x20000000;
this.fcommandHandler = new FileStream(TempFileName,
FileMode.CreateNew, FileAccess.ReadWrite,
FileShare.ReadWrite, 512, FileOptions.DeleteOnClose & FILE_FLAG_NO_BUFFERING);
Mais il ne supprime pas le fichier après la fermeture. S'il vous plaît aider.
Mais je reçois une exception "opération IO ne fonctionnera pas.Plus probablement le fichier deviendra trop long ou le handle n'a pas été ouvert pour soutenir les opérations d'E/S synchrones.", Si je mets | au lieu de &, quand j'appelle this.fcommandHandler.Close() – Anuraj
@Anuraj: Cela ne veut pas dire | est faux, cela signifie que quelque chose dans votre utilisation est incorrecte. Lasse est juste que vous avez besoin | au lieu de &. L'exception est votre prochain problème à résoudre. –
@Jeff Yates: Merci mon essai avec d'autres options. – Anuraj