2009-05-21 5 views

Répondre

3

Rien dans le framework ne permet de le faire.

Vous allez devoir chercher des solutions tierces, commerciales ou gratuites, ou créer les vôtres.

Un algorithme commun est l'algorithme VCDiff, qui est utilisé par un grand nombre de produits.

6

bsdiff a été conçu pour créer de très petits correctifs pour les fichiers binaires.

Comme indiqué sur sa page, il faut max(17*n,9*n+m)+O(1) octets de mémoire et exécute en O((n+m) log n) temps (où n est la taille de l'ancien fichier et m est la taille du nouveau fichier), il faudra beaucoup de temps et utiliser une énorme quantité de mémoire pour créer des diffs pour les fichiers de disque virtuel.

L'implémentation d'origine est en C, mais un port C# est décrit here et disponible here.

+0

Désolé, mais bsdiff a été conçu pour créer de très petits correctifs pour les fichiers EXECUTABLE. Si vous avez de gros fichiers binaires n'utilisez pas bsdiff, cela demande beaucoup de mémoire. –