Friday, November 2, 2007

Subinacl is great but...

It can not set permissions on a registry key that has an * in the name.

This actually came up for me today when working on a MSI package and NetInstall deployment for an application (that will go unnamed).

For those who are not aware, subinacl updates the ACL - Access Control List - on MS Windows.

In this particular scenario subinacl gives a message that says it is skipping the key (and sub-keys) due to a wildcard (*).

I love subinacl, it is very useful for modifying permissions on files, folders and in the registry. Especially since within Windows Installer, the permissions functionality is, or at least seems to be, broken.

I ended up using SetAcl a sourceforge project of great use.

Here are a couple of examples of how to do what I was trying to do with both tools:
  • subinacl.exe /subkeyreg \HKEY_LOCAL_MACHINE\SOFTWARE\Vendor Name /grant=Users=F
  • SetACL.exe -on "hklm\software\vendor name" -ot reg -actn ace -ace "n:Users;p:full"

No comments: