Yes, same
feature. However, if you reuse the functions listed below, you just need to
execute the calls. That is pretty simple.
My functions
just make a reference to a objLogFileName
which is a file handler a I log all activities to a file. You can get rid
of that. You call.
But if you
want to make this from WSH, that's the way to go. The functions coming out of my
books are generic and reusable for most circumstances. The code is not specific
to any specific registry changes. The functions wrap the WSH Reg
feature.
HTH
/Alain
'
-----------------------------------------------------------------------------------------------------------------------
' Write the registry (Be sure that user has right to create it) WriteRegistry objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegBinary", "REG_BINARY", _ -2147483647 WriteRegistry objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegDWord", "REG_DWORD", _ 642522 WriteRegistry objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegExpandSz", "REG_EXPAND_SZ", _ "This is an expanded '%SystemRoot%' string" WriteRegistry objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegSz", "REG_SZ", _ "This is another string" '
-----------------------------------------------------------------------------------------------------------------------
' Read the registry. Dim varRegValue varRegValue = ReadRegistry (objLogFileName,
"HKCU\Software\MyRegistryKey\Registry Access",
_
"ValueRegBinary", "REG_BINARY") varRegValue = ReadRegistry (objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegDWord", "REG_DWORD") varRegValue = ReadRegistry (objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegExpandSz", "REG_EXPAND_SZ") varRegValue = ReadRegistry (objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegMultiSz", "REG_MULTI_SZ") varRegValue = ReadRegistry (objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegSz", "REG_SZ") '
-----------------------------------------------------------------------------------------------------------------------
' Delete the registry keys created. DeleteRegistry objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegBinary" DeleteRegistry objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegDWord" DeleteRegistry objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegExpandSz" DeleteRegistry objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegSz" DeleteRegistry objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "ValueRegMultiSz" DeleteRegistry objLogFileName, "HKCU\Software\MyRegistryKey\Registry Access", _ "" DeleteRegistry objLogFileName, "HKCU\Software\MyRegistryKey", _ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Harding, Devon Sent: Monday, December 12, 2005 8:11 AM To: ActiveDir@mail.activedir.org Subject: RE: [ActiveDir] Convert to .vbs Is this the same
thing? http://msdn.microsoft.com/library/default.asp?url="">
I’m trying to make the
script as least complicated as possible. -Devon From:
[EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of Alain
Lissoir I already
replied to a similar question from you, Have a
look at http://www.lissware.net, vol 1,
Sample 1.01 to 1.25 - WSHScript.vbs. This
script contains all subroutines you need to read, write registry, env.
variables, etc ... from .vbs. With this
cscript, you will easily convert your kix script below into a
.vbs. You just
need to tweak the function calls and return codes accordingly and reuse the set
of registry keys your kix script references.
strLastRun = ReadRegistry (objLOGFileHandle,
"HKLM\Software\LisswareNet\MySoftware",
_
WriteRegistry objLOGFileHandle, "HKLM\Software\LisswareNet\MySoftware",
_ HTH. Private
Function GetRunTimeEnvInfo
(classRunTimeEnvironmentInfo) Private
Function LogRunTimeEnvInfo (objFileName,
classRunTimeEnvironmentInfo) Private Function
ReadRegistry (objFileName, strKeyName, KeyValueName,
strRegType) Private Function
WriteRegistry (objFileName, strKeyName, KeyValueName, strRegType,
varRegKeyValue) Private
Function DeleteRegistry (objFileName, strKeyName,
KeyValueName) Private
Function EnumerateDriveConnections
(objFileName) Private
Function ConnectNetworkDrive (objFileName, strDriveLetter,
strShareName) Private
Function DisconnectNetworkDrive (objFileName, strDriveLetter,
boolConfirm) Private
Function EnumeratePrinterConnections
(objFileName) Private
Function ConnectWindowsNetworkPrinter (objFileName, strShareName,
boolDefault) Private
Function ConnectNetworkPrinter (objFileName, strLPT,
strShareName) Private
Function DisconnectNetworkPrinter (objFileName, strLPT,
boolConfirm) Private
Function ReadEnvironmentVariable (objFileName, strEnvironmentType,
strVarName) Private
Function CreateEnvironmentVariable (objFileName, strEnvironmentType, strVarName,
varValue) Private
Function RemoveEnvironmentVariable (objFileName, strEnvironmentType,
strVarName) Private
Function GetAllEnvironmentVariables (objFileName,
strEnvironmentType) Private
Function ReadCommandLineArgument (objFileName,
strParameterList) Private
Function ErrorHandler (objFileName, strFunctionName, Err,
boolPopupErrors) Private
Function CreateTextFile (strFileName) Private
Function CloseTextFile (objFileName) Private
Function WriteToFile (objFileName, strText) /Alain From:
[EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
On Behalf Of I need to convert this kix scrip
into a smaller, faster .vbs script. Can it be done?
; **** If workstation, exit
script If @ProductType = "Windows 2000
Professional" or @ProductType = "Windows XP Professional" or @ProductType =
"Windows NT Workstation"
cls
Exit Endif ; **** Check / Set VNC application
hooks for logon.scr screen saver $ReturnCode =
KeyExist("HKCU\Software\ORL\VNCHooks\Application_Prefs\logon.scr") If
$ReturnCode=0
Addkey("HKCU\Software\ORL\VNCHooks\Application_Prefs\logon.scr")
WriteValue("HKCU\Software\ORL\VNCHooks\Application_Prefs\logon.scr","use_Deferral",1,"reg_dword")
WriteValue("HKCU\Software\ORL\VNCHooks\Application_Prefs\logon.scr","use_use_GetUpdateRect",1,"reg_dword")
WriteValue("HKCU\Software\ORL\VNCHooks\Application_Prefs\logon.scr","use_KeyPress",1,"reg_dword")
WriteValue("HKCU\Software\ORL\VNCHooks\Application_Prefs\logon.scr","use_LButtonUp",1,"reg_dword")
WriteValue("HKCU\Software\ORL\VNCHooks\Application_Prefs\logon.scr","use_MButtonUp",1,"reg_dword")
WriteValue("HKCU\Software\ORL\VNCHooks\Application_Prefs\logon.scr","use_RButtonUp",1,"reg_dword")
WriteValue("HKCU\Software\ORL\VNCHooks\Application_Prefs\logon.scr","use_Timer",0,"reg_dword") EndIf ; **** Check / Set registry settings
for BGINFO $ReturnCode =
KeyExist("HKCU\Software\Winternals") If $ReturnCode = 0
Addkey("HKCU\Software\Winternals") EndIf $ReturnCode =
KeyExist("HKCU\Software\Winternals\BGInfo") If $ReturnCode =
0
Addkey("HKCU\Software\Winternals\BGInfo")
WriteValue("HKCU\Software\Winternals\BGInfo","Background",0,"reg_dword")
WriteValue("HKCU\Software\Winternals\BGInfo","Foreground",16777215,"reg_dword") EndIf ; **** Run BGINFO from NetLogon
share Run @Ldrive + "\bginfo.exe
/i\\bsgad1\netlogon\newbginfo.bgi /timer:0"
; **** Check / Set registry settings
for screen saver. Logoff user if settings are
updated $IsLocked = ReadValue("HKCU\Control
Panel\Desktop","ScreenSaverIsSecure") $SSTimeOut = ReadValue("HKCU\Control
Panel\Desktop","ScreenSaveTimeout") $SSActive = ReadValue("HKCU\Control
Panel\Desktop","ScreenSaveActive") $ScrnSave = ReadValue("HKCU\Control
Panel\Desktop","SCRNSAVE.EXE") If $IsLocked = 0 or (VAL($SSTimeOut)
> 900) or $SSActive = 0 or $ScrnSave = ""
WriteValue("HKCU\Control
Panel\Desktop","ScreenSaverIsSecure","1","reg_sz")
WriteValue("HKCU\Control
Panel\Desktop","ScreenSaveActive","1","reg_sz")
WriteValue("HKCU\Control
Panel\Desktop","ScreenSaveTimeout","900","reg_sz")
WriteValue("HKCU\Control Panel\Desktop","SCRNSAVE.EXE","%system
root%\system32\logon.scr","reg_sz")
MessageBox("ScreenSaver settings were not previously set. Settings have
been updated. A logout is required to activate new settings. Click
Ok and the system will logout you out now. Auto-logoff in 20
seconds.","Logout Required",4112,20)
Logoff(1) EndIf Windows
Systems Engineer Southern Wine
& Spirits - BSG 954-602-2469 __________________________________ |