Tech Support Forum banner

Setting permanent Environment Variables via VBscript or GPO xp/vista?

42831 Views 1 Reply 2 Participants Last post by  Knuds
I need a way to set an environment variable based on the type of OS
installed.. ie: If the OS is 32bit only, then I need to set an
environment variable %ProgramFilesx86%= "" (blank), if the envronment
is 64bit, then I want something like %ProgramFilesX86"= the x86 path

The reason for this is a coding language used in an application cannot
handle the "(x86)" part of the default environment variables.. there
is no way around it.. so the only way is to create a new environment

Does anyone know of a way to do this via GPO.. or is there some other
way that wouldnt involve a GPO?

I tried this with a vbs file.. which worked fine in XP, but not in vista..

Here was my VBS code:

Set WshShell = CreateObject("WScript.Shell")

' makes environment settings permanent
Set WshSystemEnv = WshShell.Environment("SYSTEM")

' Set environment variable
WshSystemEnv("test") = "1234"

I got a permission denied on the last line.

I also tried using the schtasks.exe method of scheduling the vbs script at logon for Vista, as I do with the mapped drives situation, but this wasnt even working, gave me access denied errors just running the schtasks.exe command...

If I try this during the login script, it gets lost after the
login.bat window closes...

This needs to stay in "memory" while the OS is running, after the
login script..

(I've seen some examples of doing environment variables via GPO ADM
templates, but I'm not sure how to make it dynamic based on if the
program files (x86) folder exists or not)

Any help would be great.

See less See more
Not open for further replies.
1 - 1 of 2 Posts
UAC in Vista - therfor you vbs wil not function correctly.

User Account Control og Vista will runs vbs scripts without administrative privileges.

You can disable this Vista security with a vbs script or set it in GPO but only with a 2008 servier or a Vista maschine in the same domain.

Her you have the vbs script.

WshShell.RegWrite "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\policies\system\EnableLUA","0","REG_DWORD"

You can also make this change directly in regedit and set this key EnableLUA to 0.

I hope this will help you.

Knud Schrøder

See less See more
1 - 1 of 2 Posts
Not open for further replies.