Skip to content
⌘ NSIS Forum Archive

Deferring Delete of DLLs at end of install

5 posts

dantemw#

Deferring Delete of DLLs at end of install

At the end of an NSIS install there seems to be a cleanup phase that deletes DLLs used by the installer such as "nsExec.dll" and "System.dll". However if one of these DLLs is in use at the time of delete it gets marked for delete on Reboot.

Is it possible to modify this cleanup behavior to either:
1. Not delete on reboot
2. Be invoked by calling into the installer with a command-line rather than automatically happening at the end of the script?

Thank You,
Michael
dantemw#
Nevermind. I discovered that it was the NSISArray DLL that was marked for delete on reboot. I just added:
Function .onGUIEnd
NSISArray::Unload
FunctionEnd

And all is well.
dantemw#
Thank you for your reply angry face. Your tip has helped me a great deal, and I will continue to RTFM as I have in the past.

--
Michael
Brummelchen#
nm...

sometimes i ask also stupid questions where i know the
answer after a couple of minutes while try&error or reading
over and over the faq.

well - idd - i made same error with nsisarray - the key
for reboots is in registry and called "pending operations"
i have my own tool to clear those mistakes.