Hope I'm not duplicating something already covered - but if I am, I can't find the answer!
I have an NSIS installer that runs fine under Windows XP, but under Vista the RegAsm line fails as needing to be run as administrator.
ExecWait '$INSTDIR\System\RegAsm.exe /codebase CryptoClass.dll /t'
Also the registration of a dll fails
RegDLL "$INSTDIR\System\MailBee.dll"
I can do the registrations manually by starting up a command window (Start, Ctrl-Shift-Enter), changing to my $INSTDIR\System folder then running
RegAsm.exe /codebase CryptoClass.dll /t'
and
RegSvr32 MailBee.dll
So I assume it is a UAC problem. How do I modify my script to resolve the problem?
Regasm and Vista
6 posts
it think the answer to your problem is:
RequestExecutionLevel
its explained in the NSIS Manual
RequestExecutionLevel
its explained in the NSIS Manual
Could you possibly give me a hint as to where to look in the Manual!
OK - (sorry if I'm being stupid, but am new to NSIS although a long-time programmer..)
This doesn't seem to have made a difference...
Firstly I unregistered Mailbee.dll manually
Then I inserted RequestExecutionLevel admin at the start of my script and compiled it
Then reran the install and started up my (MS Access-based) App.
It flagged that the Mailbee reference was missing - so I conclude that RegDll still didn't have authority. Unfortunately it all runs too fast to spot any errors being output
This doesn't seem to have made a difference...
Firstly I unregistered Mailbee.dll manually
Then I inserted RequestExecutionLevel admin at the start of my script and compiled it
Then reran the install and started up my (MS Access-based) App.
It flagged that the Mailbee reference was missing - so I conclude that RegDll still didn't have authority. Unfortunately it all runs too fast to spot any errors being output
It now works - not sure what I did unfortunately!