2012-07-05 16 views
5

¿Hay alguna manera de detectar las limitaciones de tamaño del sistema de archivos individuales (por ejemplo, 4 gb en la grasa 32)?Cómo detectar las limitaciones del tamaño del sistema de archivos individuales

Debe funcionar en el sistema operativo Windows, pero mejor sería una solución portátil. Detectar el tipo de sistema de archivos podría ser una solución, pero no sé cómo puedes hacer eso tampoco.

¿Alguien me puede ayudar aquí?

gracias de antemano Tobias

+0

Ciertamente puedo pensar en formas no portátiles de consulta de la * * Nombre del sistema de archivos en Windows, pero no creo que satisface adecuadamente su solicitud ... – reuben

+0

Probablemente resolvería mi problema por el momento, pero me dejaría con la incómoda sensación de tener una solución "fea" para este problema. Aún así, si no hay otra manera, no se puede evitar. –

+1

... pero felicitaciones para al menos buscar una opción mejor y más limpia. Muchos desarrolladores no harían lo mismo ... – reuben

Respuesta

3

Puede detectar el tipo de sistema de archivos en Windows con GetVolumeInformation

+1

... o a través de WMI, si así lo desea. No obstante, deberá codificar el conocimiento de los sistemas de archivos admitidos generalmente (por ejemplo, NTFS, FAT, FAT32, EXFAT, CDFS, UDF, etc.). – reuben

+0

@ruben: Sí, pero después de mirar http://msdn.microsoft.com/en-us/library/windows/desktop/aa364407%28v=vs.85%29.aspx Realmente no veo una mejor manera. Quizás el kit IFS conozca más códigos IOCTL que podrían ayudar ... – Anders

0

Puede obtener los totales limitaciones de capacidad a travésboost::space(), o usar directamente POSIX fstatvs().

En cuanto a las limitaciones en el tamaño de los archivos individuales ... la única respuesta portátil que me viene a la mente es la fea fuerza bruta try-to-create-larger-and-larger-files-until-failure, costoso como es (e imposible si la capacidad ya es limitada).

+1

Eso puede proporcionar la cantidad de espacio libre, pero no necesariamente los límites de implementación inherentes del sistema de archivos ... – reuben

+0

Total. Sin embargo, estoy un poco confundido sobre cuándo serían de interés las limitaciones inherentes a la dirección, en lugar de la capacidad. –

+0

Considere un sistema de archivos que tiene más de 4 GB de espacio libre pero que aún no permite la creación de archivos de más de 4 GB. Esto puede ser importante para entender desde el principio, antes de intentar crear cualquier archivo ... – reuben

Cuestiones relacionadas