Snover
5th May 2003 22:25 UTC
Upgrade DLLs ONLY if the installed version is lower?
I'm not sure how to work this, since there is no inequality stuff in NSIS that I know of. I can GET the DLL version sure and I can check if they are EQUAL but as far as I know there's no way of doing this. So, anyone?
Joost Verburg
5th May 2003 22:45 UTC
Use the UpgradeDLL macro. You can find this macro in the NSIS 2 documentation or in the archive: http://nsis.sourceforge.net/archive/....php?pageid=38
And about the inequality stuff: IntCmp can jump to different locations when the value is lower, equal or higher.
Sunjammer
5th May 2003 22:46 UTC
Well IntCmp won't jump anywhere in the case of <> so that's at least one way.
Snover
5th May 2003 23:09 UTC
Can I concatenate strings and then test?
Joost Verburg
6th May 2003 12:31 UTC
What do you mean? And why not use UpgradeDLL?
Snover
6th May 2003 19:16 UTC
Does UpdateDLL actually check versions before it upgrades? I was under the impression that it just automated the process of reboot-overwriting DLLs that couldn't be removed.
Joost Verburg
6th May 2003 22:24 UTC
UpgradeDLL first checks the version. It only updates if an older DLL is installed. It also handles registering, reboots, register-on-reboot etc.