[This is preliminary documentation and subject to change.]
The GUI-mode portion of Windows NT Setup may be restarted in case of a critical interruption (such as a power failure) during the upgrade. Your migration DLL should be prepared to handle this scenario. For example, before moving files, the DLL must check to see if the file has already been moved. Of course, this is standard programming practice, and the extent of your fail-safe functionality is mostly determined by the complexity of your migration process.