The open() method of the WindowsRegistry class allows the user to specify the access rights to open the key with. However the list of rights that are allowed is incomplete. This leads to the situation where a user would have the required right to do an operation with a key, but they can't specify that right in the open() method. The operation then fails when it doesn't have to.
One such right is the 'delete' write. Currently, you need to specify the 'All' rights, which for many users is not going to be granted. However 'delete' is a limited right which would be granted in circumstances where 'All' will not be granted.