Archive: InstallLib does not replace DLL


InstallLib does not replace DLL
Hello,

in my setup I'm installing several DLL files as shared dll's by using the InstallLib macro.
The installation works fine, but when a DLL must be upgraded to a new version, the InstallLib will not replace it and leaves the old version!

#$ALREADY_INSTALLED is not defined

!insertmacro InstallLib DLL $ALREADY_INSTALLED NOREBOOT_NOTPROTECTED "some.dll" "$COMMONFILES\some.dll" $TEMP

As you see, it is not a file of a system directory, but the dll is (shared) installed on the system by several applications from my company (with NSIS).

Is there some point I'm missing here to "acivate" the replace feature?


If you use NOREBOOT_NOTPROTECTED and the file is in use, it'll fail installing the file. You can't replace files that are in use without REBOOT_PROTECTED or REBOOT_NOTPROTECTED.