Overview: What is DF SDK?

DF SDK version

Copyright © 2002-2008 by AgenSoft. All rights reserved.

Contacting Agensoft


DF SDK is a software development kit which provides an effective approach for creating software patches and updates, and integrating of the patch applying and/or building process directly into you own software product(s). Unlike other available products, DF SDK does not simply create incremental updates and re-package files, but analyzes each file at the byte level and builds the difference for updating the target file on the end-user's system.


DF SDK does not deal with any specific data structures, it operates with files as a binary data, and that why it is designed to work well on files of any type including executables, libraries, data files and others.

It can be used to build a difference for two binary files with the following reconstruction of the new version file(s) using an old file and the output difference file (df-file).

DF SDK is available as a standard dynamic link library (DLL), and can be used almost with any Windows development language. The DF SDK API is designed to be simple enough to integrate it into your existing products/solutions, and to provide a high-grade of performance and flexibility. DF SDK comes with sample programs, and includes examples which can simplify patch creation and applying process.


Keeping your customers on the most current version optimizes the performance of your product and significantly reduces your end-user support costs.


DF SDK can be used as an efficient instrument in solving of the following problems:

· Software updating/patching;
· Differential backup;
· Version control.


DF SDK package consists of two main components, which are:

· LIBDF library (REDISTRIBUTABLE PACKAGE), functionality of this library provides comparing of two binary files and creating a difference-file (df-file), and reconstructing a new version file using an old file and created difference-file;
· LIBDFP library (REDISTRIBUTABLE PACKAGE), this library contain all functionality needed to reconstruct a new version file using an old file and created df-file (only functions listed in the "Difference Applying" category are included so that the size of this library is significantly smaller then that of LIBDF library).


NOTE: Only libdf.dll and/or libdfp.dll modules may be freely redistributed, e.g. within your own software product(s). You may not redistribute any other documents, code examples, etc. included into the full-version distribution package (obtained after ordering)!


NOTE: Source code is not included into the the full-version distribution package (obtained after standard ordering)! It can be obtained only upon request for additional payment.


Key features of DF SDK v1.0.2.2 :


· Comparing files with size up to 2^63 Bytes (~8589934592 Gb).
· High speed of file comparing and df-file reconstruction
· Improved quality of file-comparing, resulting in smaller output df-files
· bzip2-compression is used and as a result the output difference-file (df-file) is smaller by size
· Flexible control under ratio "time/result" with the help of different comparing methods selection
· Setting utilized resources constraints
· Support for all Windows versions in use today -- Windows 95, 98, 2000, 2003, XP, Me, and NT 4.0 SP6.


DF SDK is developed to effectively accomplish a "binary files updating/patching" task.

If you are familiar with such standard utilities of the UNIX system as diff and patch then we could say that functionality of DF SDK can accomplish the same task though there is a significant difference: DF SDK effectively operates not only with text but with all binary files.


The idea behind DF SDK is simple: when modified file(s) must be transmitted, send only the changes (byte level differences) stored in one reliable self-installing update module rather than the entire software installation package. DF SDK lossless byte-level compression is not content dependent, so it may be used whenever data is changed at one location and must be efficiently updated and/or archived at another.



NOTE: DF SDK does not deal with any specific data structures, it operates with files as a binary data. Databases or files of other formats can be updated only as binary files (warning: database update can be implemented only if it is not changed on the end-user's machine at the moment).


System requirements :


· Microsoft Windows 95, 98, NT4, 2000, ME, XP, 2003 or above
· Processor 486 and above, 16 Mb RAM
· Microsoft Internet Explorer 5.0 or later - only to view this chm help-file
· Display resolution 800x600 hi-color (16 bits) - only to view chm help-file


Converted from CHM to HTML with chm2web Standard 2.75 (unicode)