I am trying to create a copy of registry keys without using RegSaveKey. Part of it is a learning excercise, and the other part of it is wanting to develop a registry copying mechanism that does not overwrite the existing data upon restoration (like RegRestoreKey does).

As far as I can tell my copy mechanism is working right. Value data, subkey data, and security descriptor data seems to be an identical match when I compare a copied key to it's original. However, when I attempt to save the copied key using RegSaveKey and compare it to the original key saved with RegSaveKey, a binary comparison of the file shows differences.

Is this to be expected? Will two identical reg keys saved with RegSaveKey generally yield two binary-exact files? Is there any circumstance where they will? I am trying to verify that my copy mechanism is thorough enough and that there is not some component I missed during the copy. Is there anyway I can prove that it is thorough enough?

Thanks for any help you can give.