regdelta 0.2 has been released
Submitted by ross on Wed, 11/08/2006 - 20:00
I created regdelta to provide an automated way to produce .reg files of changes made when installing or running applications.
You can download the binary here and the binary with the source code here. The program includes a complete test suite. Using it, I even discovered a few anomolies with the Microsoft tools regedit, and reg. Here's the changelog:regdelta changelog Version 0.2 - 12 Jul 06: Standardized version information across all programs Version 0.1 - 09 Jun 06: Initial release
And here's the readme.txt:
regdelta 0.2 - 12 Jul 2006 Copyright (c) 2005-2006 Ross Smith II (http://smithii.com) All Rights Reserved ------------------------------------------------------------------------------ Usage: regdelta [options] [key | file.reg] [key | file.reg] Options: -a | --all Compare/export all keys (HKCC HKCU HKCR HKLM HKU) -x | --export key(s) ex.reg Export key(s) to ex.reg -o | --output output.reg Set output filename to 'output.reg' -c | --comments Include original values as comments in diff -r | --regedit Export in RegEdit format (implies -u -w) -u | --unsorted Do not sort the keys or values, as RegEdit -w | --wordwrap Wordwrap at 78 chars, as RegEdit -v | --verbose Show warnings that are normally hidden -V | --version Show version & copyright information & quit -? | --help Show this help message and quit Examples: regdelta HKCU hkcu.reg ; compare HKCU key with hkcu.reg regdelta HKCU\1 HKCU\2 ; compare HKCU\1 key with HKCU\2 key regdelta -o diff.reg HKCU hkcu.reg ; compare HKCU key with hkcu.reg regdelta -x HKCU hkcu.reg ; export HKCU key to hkcu.reg regdelta -xr HKCU\Software ex.reg ; export HKCU to ex.reg in REGEDIT format regdelta -ax allkeys.reg ; export all keys to allkeys.reg ------------------------------------------------------------------------------ Notes: regdelta.exe reads and writes ASCII .reg files (Windows 9x/NT 4) regdeltau.exe reads and writes Unicode .reg files (Windows 2000/XP/2003) 'key' can be one of the following: HKCC HKEY_CURRENT_CONFIG HKCU HKEY_CURRENT_USER HKCR HKEY_CLASSES_ROOT HKLM HKEY_LOCAL_MACHINE HKU HKEY_USERS Reads entire registry into memory for performance, so this may be an issue in a low memory environment. ------------------------------------------------------------------------------ To Do List: Compare currently only works on files created by regdelta. This will be fixed in a related release. Add HKA | HKEY_ALL key Options: -e | --execute 'cmd' ex.reg Execute cmd & save differences to ex.reg -s | --sort in.reg out.reg Sort in.reg to out.reg Examples: regdelta -s input.reg output.reg ; sort input.reg to output.reg regdelta -e 'setup.exe /S' ex.reg ; run setup & save differences in ex.reg To emulate the --execute option, I've used this batch script, called regdiff.cmd: @echo off del "%TEMP%\~regdiff_?.reg" >nul 2>nul regdelta.exe -ax "%TEMP%\~regdiff_1.reg" start /wait %* regdelta.exe -ax "%TEMP%\~regdiff_2.reg" regdelta.exe -o "%~1_redo.reg" "%TEMP%\~regdiff_1.reg" "%TEMP%\~regdiff_2.reg" regdelta.exe -o "%~1_undo.reg" "%TEMP%\~regdiff_2.reg" "%TEMP%\~regdiff_1.reg" del "%TEMP%\~regdiff_?.reg" >nul 2>nul
Other keywords: diff, regdiff
»
- ross's blog
- Login to post comments
Oops!
All of my C/C++ programs require shared-1.1-win32-src.zip.
I will add this information to the readme files.
Thanks, Andrew
your help is much appreciated.
I have no idea
Regdelta is written in C++, and I've optimized it somewhat, but it could certainly be optimized more.
I'm using Windows XP SP2 and for me regdelta runs about 50% as fast as regedit or reg: