Je maintiens une application qui recueille des données à partir d'un enregistreur de données et ajoute ces données à la fin d'un fichier binaire. La nature de ce système est que le fichier peut développer de grandes étapes (> 4 gigaoctets) à la fois. Sur les utilisateurs de mon application a vu des cas sur sa partition NTFS où les tentatives d'ajouter des données échouent. L'erreur est signalée à la suite d'un appel à fflush(). Lorsque cela se produit, la valeur de retour pour GetLastError() est 665 (ERROR_FILE_SYSTEM_LIMITATION). MSDN donne ce qui suit description pour cette erreurQuels sont les facteurs pouvant conduire à Win32 error 665 (limitation du système de fichiers)?
L'opération demandée n'a pas pu être effectuée en raison d'une limitation du système de fichiers
Une recherche de ce code d'erreur sur Google donne des résultats liés au serveur SQL avec une très grande fichiers (dizaines de gigaoctets) mais, à l'heure actuelle, notre fichier est beaucoup plus petit. Cet utilisateur n'a pas pu obtenir le fichier à dépasser 10 gigaoctets. Nous pouvons corriger temporairement la situation lorsque nous faisons une opération (comme copier le fichier) qui force une sorte de réécriture dans le système de fichiers. Malheureusement, je ne suis pas sûr de ce qui se passe pour nous mettre dans cette condition en premier lieu. Quelles conditions spécifiques dans un système de fichiers NTFS peuvent conduire à cette erreur particulière signalée lors d'un appel à fflush()?
Peut-être que [ce] (http://blogs.technet.com/b /mikelag/archive/2011/02/09/how-fragmentation-on-incorrectly-formatted-ntfs-volumes-affects-exchange.aspx) aide. Il s'agit d'Exchange, mais peut-être que vous pouvez trouver quelque chose là-bas. –
http://support.microsoft.com/default.aspx?scid=kb;EN-US;967351 –