- NSIS Discussion
- Legacy Drivers & Win7 x64
Archive: Legacy Drivers & Win7 x64
PoRtAbLe_StEaLtH
15th November 2011 16:43 UTC
Legacy Drivers & Win7 x64
Hey guys.. first time posting here.. but i have been browsing these forums for quite some time.
I am a huge fan/user of NSIS.
While many have converted to PAF, i faithfully am sticking by.
I have successfully compiled many Portable Launchers for my apps.
and have run into many problems, but always found an answer by trial & error/research.
Until now: i have been frustrated for many weeks now.
Problem: i can't seem to delete legacy registry keys.
My OS: Win7/64
I have tried Access::Control plugin without success.
The problem is the key can only be deleted under 'System'.
Anyone have any ideas?
Thanks in advance
Anders
15th November 2011 17:18 UTC
NSIS has no support for running things as System, if you want to do that you need to call a utility like psexec or use a service.
Did you take ownership of the key with AccessControl::SetRegKeyOwner before changing the ACL as admin?
Did you check with Process Monitor to make sure this is a access denied issue?
Are you using SetRegView?
PoRtAbLe_StEaLtH
15th November 2011 19:25 UTC
Originally posted by Anders
NSIS has no support for running things as System, if you want to do that you need to call a utility like psexec or use a service.
very nice.. PsExec.exe did it :)
thank you so very much for the prompt response.
PoRtAbLe_StEaLtH
9th June 2012 12:11 UTC
Originally posted by Anders
NSIS has no support for running things as System, if you want to do that you need to call a utility like psexec or use a service.
Did you take ownership of the key with AccessControl::SetRegKeyOwner before changing the ACL as admin?
Did you check with Process Monitor to make sure this is a access denied issue?
Are you using SetRegView?
hey Anders,
thanks for mentioning PsExec..
that's what im using to delete legacy keys ..
however.. i have seen apps use AccessControl to delete legacy keys, but when i run those apps on my computer.. it doesn't work.
i have also ran into SetACL, which in it's documentation, says: "can be used to delete those pesky legacy keys".
neither of which works..
and yes.. i tried setregview, SetRegKeyOwner first, etc..
on my computer.. legacy keys are registered to "System".
is this the case just for Windows 7?
i have been looking into this for quite a while and it seems im the only one who seems to have a problem deleting legacy keys.
i can use PsExec.. but if i could find an alternative.. it would be better.. as PsExec scares people.. they think im trying to "secretly take over" their computers.. lol.
thanks for any other suggestions/tips.
Brummelchen
23rd June 2012 19:07 UTC
Quote:
Afrow UK
25th June 2012 22:19 UTC
You will have to write a Windows service in C then. This can be created, executed and then deleted using a services plug-in such as SimpleSC.
Stu
PoRtAbLe_StEaLtH
6th December 2012 10:53 UTC
Originally posted by Afrow UK
You will have to write a Windows service in C then. This can be created, executed and then deleted using a services plug-in such as SimpleSC.
Stu
this post is rather old, and i completely forgot about this.
i was able to figure it out using Access::Control.
my syntax was incorrect.
although.. i wish there was a /r (recursive) switch.
it would save a lot of coding.
PsExec scares people.. they think im trying to "secretly take over" their computers.. lol. well, offtopic - there is nothing to lol with your actions - at least you change important settings and this destroy windows. thats worth to kickass. |