Hay en los sistemas de archivos de Windows un hash calculado previamente para cada archivo?
Pregunta
Quiero buscar un duplicado archivo por su hash. Para los propósitos de rendimiento Quiero saber si hay un hash / checksum almacenado para cada archivo en sistemas de archivos / FAT NTFS. Si lo hay, yo no tengo que calcular a todos a buscar mi archivo.
Si la hay, cómo acceder a ella usando .NET?
Si ayuda, será archivos JPEG. ¿Tienen una suma de comprobación?
Solución
No existe tal cosa.
Otros consejos
Windows no almacena un hash para cada archivo. Como sugiere Jader Dias, hay sumas de comprobación para EXE y DLL, pero estos no son los robots que está buscando.
Tenga en cuenta que incluso si usted tenía un hash tal, sigue sin garantizar la unicidad. Si has encontrado dos archivos con el mismo hash (y tamaño) que todavía tendría que luego comparar el contenido para determinar si los archivos fueron realmente la misma.
Los archivos JPEG pueden tener algunas sumas de comprobación o hash, pero es probable que no pueden contar con ellos tampoco.
Windows sin embargo, aplica búsqueda ahora y si recuerdo correctamente, puede escribir sus propios plugins para ello (en otras palabras, a los archivos de índice de una manera personalizada). Presumiblemente, se podría escribir un plugin para los archivos JPG y luego simplemente hacer llamadas de API de búsqueda para encontrar archivos (después de que Windows hace la indexación).