I have an IE toolbar which needs to read / write to the registry (only
HKEY_CURRENT_USER). Unfortunately when I run IE under Vista, it is not
able to access the registry.
If I run IE with admin privileges it can access the registry ok.
I made a test appli which runs (not as admin) and it is able to access
the registry.
I've tried to associate a manifest to my DLL in the hope that I could
request greater priviledges but with no success.
Any help is much appreciated.
My manifest :
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urnTongue Tiedchemas-microsoft-com:asm.v1"
manifestVersion="1.0">
<assemblyIdentity
version="1.0.0.0"
processorArchitecture="*"
name="ToolBar.dll"
type="win32"/>
<trustInfo xmlns="urnTongue Tiedchemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
I found the solution - in fact it can only write to certain registry
entries.
See http://www.codeproject.com/vista-security/PMSurvivalGuide.asp?df=100&forumid=420413&select=2161794&msg=2161794
I have another question :
With Vista / Internet Explorer I have a BHO (sidebar) which uses a
window handle created by an external appli (which runs in normal
mode). This works fine in XP but in Vista does not (I suppose the
windows handle cannot be displayed in the protected mode of IE). It
does work if IE is run as admin.
I could try several solutions:
- run the BHO in medium and not low integrity (if this is possible / I
can figure out how)
- try and decrease the integrity level of the windows handle
(SetSecurityInfo...)
- run the appli in low and not medium integrity
Each of these options takes a while to try out since there's little
documentation / examples.
If anyone has an idea as to which solution will work, I should be very
grateful.