No that is the correct way. If you move it then you have to re-register it. When you register a dll part of the info stored is the dll's location, so then if you move it, it doesn't know where to look. That is part of the reason most dlls get installed to the same folder (system). The dynamic linking part is because that is what the technology does at runtime, link the library and the exe.