Link to home
Start Free TrialLog in
Avatar of NetSolve-VA
NetSolve-VA

asked on

Need small app to modify HKEY_CURRENT_USER

Let me start off by saying I dont know how to program.  I need a tiny app that a user can run to change some settings on HKEY_CURRENT_USER.  What I am trying to achieve is covered in How to turn off e-mail matching for certificates in Outlook (http://support.microsoft.com/kb/276597 )
Basically this just entails a user editing the registry for the appropriate version of Outlook.  The problem is that the users dont have permissions to run any registry editor or even the reg.exe command and since the key is HKEY_CURRENT_USER they have to be logged in to implement the change.  
I wrote a batch file using the Reg  ADD commands.  Again the issue that the local users dont have permission to run any registry editor or Reg.exe requires that I have to have an administrator log on and give the Local Users group Read and Execute permission on Reg.exe before I can have the user run the bat file.  So I was thinking that if I had an executable that just made the changes I could have the user run it when they logged on from a shared directory.  This would eliminate two concerns; one is that my current plan leaves Reg.exe available for users to be able to run commands against. The other is that it is a two step process that requires the administrator to log onto each machine to give the local user the permission to run reg.exe. We are talking about hundreds of machines each month.
Here is the bat file I wrote:
REG ADD HKLM\SOFTWARE\Microsoft\Office\9.0\Outlook\Security /v SupressNameChecks /t REG_DWORD /d 1
REG ADD HKCU\SOFTWARE\Microsoft\Office\10.0\Outlook\Security /v SupressNameChecks /t REG_DWORD /d 1
REG ADD HKCU\SOFTWARE\Microsoft\Office\11.0\Outlook\Security /v SupressNameChecks /t REG_DWORD /d 1
REG ADD HKCU\SOFTWARE\Microsoft\Office\12.0\Outlook\Security /v SupressNameChecks /t REG_DWORD /d 1

Help!
Avatar of Shift-3
Shift-3
Flag of United States of America image

Registry values can be set with vbscript.  Paste the script below into a text file with a .vbs extension.  Running it will set the specified values, assuming that users have modify permissions to the keys in question.


Const HKEY_CLASSES_ROOT = &H80000000
Const HKEY_CURRENT_USER = &H80000001
Const HKEY_LOCAL_MACHINE = &H80000002
Const HKEY_USERS = &H80000003
Const HKEY_CURRENT_CONFIG = &H80000005
 
Set objRegistry = GetObject("winmgmts:\\.\root\default:StdRegProv")
 
objRegistry.SetDWORDValue HKEY_LOCAL_MACHINE, "SOFTWARE\Microsoft\Office\9.0\Outlook\Security", "SupressNameChecks", 1
objRegistry.SetDWORDValue HKEY_CURRENT_USER, "SOFTWARE\Microsoft\Office\10.0\Outlook\Security", "SupressNameChecks", 1
objRegistry.SetDWORDValue HKEY_CURRENT_USER, "SOFTWARE\Microsoft\Office\11.0\Outlook\Security", "SupressNameChecks", 1
objRegistry.SetDWORDValue HKEY_CURRENT_USER, "SOFTWARE\Microsoft\Office\12.0\Outlook\Security", "SupressNameChecks", 1

Open in new window

Avatar of NetSolve-VA
NetSolve-VA

ASKER

Thank you for the quick response.  How does the user run it?
ASKER CERTIFIED SOLUTION
Avatar of Shift-3
Shift-3
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial