Per l'applicazione specifica che hai descritto, trovare l'hash SHA-1 di ciascun file nella directory e quindi eseguirli insieme XOR funzionerebbe correttamente.
byte[] checksum = new byte[sha1Length];
for each file
for (int index = 0; index < sha1Length; index++)
checksum[index] ^= fileChecksum[index]
A cura di aggiungere: Come sottolineato nei commenti, questo non funziona davvero. Uno specifico scenerio aggiungerebbe due file identici, che si annullerebbero a vicenda nello XOR. Forse creando uno stream con tutti i nomi di file e data/ora e hash di file e quindi hashing che ti darebbe quello che ti serve.
Modificato di nuovo: OK, ora hai cambiato la tua domanda! Quindi non importa!
fonte
2009-12-28 15:34:59
C'è una ragione per cui non si dovrebbe usare semplicemente FileSystemWatcher? http://msdn.microsoft.com/en-us/library/system.io.filesystemwatcher.aspx – Will
Perché non funziona, ovviamente. Solo su alcuni file system supportati. –
@Will Anche nei file system supportati, non è garantito l'attivazione (dimensione buffer limitata). – vossad01