TUTOS.EU

Citrix Windows 8 and Server 2012 Optimization script

Script d'optimisation de Windows 7, 8 2012 etc ... pour une golden image pour du XenDesktop ou autre

Le script.
Attention de bien valider les paramètres qui seront modifiés. Comme dit sur les pages de Citrix, c'est à vos risques et périls !

' Title:         Windows 8 and Server 2012 VDI Optimization Script
' Author:        Pablo Legorreta
' Modifications: Steven Krueger & William Elvington
'
' Special thanks to Jonathan Bennett (AutoITScript) 
' for creating a wonderful optimizer tool and to Jeff Stokes (MSFT) 
' for creating the original baseline script for Windows 7

'
' Purpose:       The following script will prepare a Windows 8 or Server 2012 
'                static image for VDI deployment based on MSFT and Citrix recommendations.

' Requirements:  Administrative Privileges, Registry backup - Just in case ;)

on error resume next
' // ============== 
' // Variables
' // ============== 

' Constants 
Const ForReading = 1 
Const Disable_Aero = False 
Const Disable_BranchCache = False 
Const Disable_EFS = False 
Const Disable_iSCSI = False 
Const Disable_MachPass = False 
Const Disable_Search = False

Const Install_NetFX3 = False 
Const NetFX3_Source = "D:\Sources\SxS"

' Common objects 
  Set oShell = WScript.CreateObject ("WScript.Shell") 
  Set oFSO = CreateObject("Scripting.FileSystemObject") 
  Set oEnv = oShell.Environment("User")

' Command Line Arguments for Some Settings 
  Set colNamedArguments = WScript.Arguments.Named

If colNamedArguments.Exists("Aero") Then 
     strAero = colNamedArguments.Item("Aero") 
  Else 
     strAero = Disable_Aero 
  End If

If colNamedArguments.Exists("BranchCache") Then 
     strBranchCache = colNamedArguments.Item("BranchCache") 
  Else 
     strBranchCache = Disable_BranchCache 
  End If

If colNamedArguments.Exists("EFS") Then 
     strEFS = colNamedArguments.Item("EFS") 
  Else 
     strEFS = Disable_EFS 
  End If

If colNamedArguments.Exists("iSCSI") Then 
     striSCSI = colNamedArguments.Item("iSCSI") 
  Else 
     striSCSI = Disable_iSCSI 
  End If

If colNamedArguments.Exists("MachPass") Then 
     strMachPass = colNamedArguments.Item("MachPass") 
  Else 
     strMachPass = Disable_MachPass 
  End If

If colNamedArguments.Exists("Search") Then 
    strSearch = colNamedArguments.Item("Search") 
  Else 
    strSearch = Disable_Search 
  End If

If colNamedArguments.Exists("NetFX3") Then 
    strNetFX3 = colNamedArguments.Item("NetFX3") 
  Else 
    strNetFX3 = Install_NetFX3 
  End If


' Enable RDP Connections
RunWait "WMIC rdtoggle where AllowTSConnections=0 call SetAllowTSConnections 1,1" 
RunWait "netsh advfirewall firewall set rule group=" & Chr(34) & "remote desktop" & Chr(34) & " new enable=Yes"

 

' // ================== 
' // Service Settings 
' // ==================

' Disable Application Layer Gateway Service 
RunWait "sc config ALG start= disabled"

' Disable Background Intelligent Transfer Service 
RunWait "sc config BITS start= disabled"

' Disable Bitlocker Drive Encryption Service 
RunWait "sc config BDESVC start= disabled"

' Disable Block Level Backup Engine Service 
RunWait "sc config wbengine start= disabled"

' Disable Bluetooth Support Service 
RunWait "sc config bthserv start= disabled"

If strBranchCache = True Then 
    ' Disable BranchCache Service 
    RunWait "sc config PeerDistSvc start= disabled" 
  End If

' Disable Computer Browser Service 
RunWait "sc config Browser start= disabled"

' Disable Device Association Service 
RunWait "sc config DeviceAssociationService start= disabled"

' Disable Device Setup Manager Service 
RunWait "sc config DsmSvc start= disabled"

' Disable Diagnostic Policy Services 
RunWait "sc config DPS start= disabled" 
RunWait "sc config WdiServiceHost start= disabled" 
RunWait "sc config WdiSystemHost start= disabled"

' Disable Distributed Link Tracking Client Service 
RunWait "sc stop TrkWks" 
RunWait "sc config TrkWks start= disabled"

If strEFS = True Then 
    ' Disable Encrypting File System Service 
    RunWait "sc config EFS start= disabled" 
  End If

' Disable Family Safety Service 
RunWait "sc config WPCSvc start= disabled"

' Disable Fax Service 
RunWait "sc config Fax start= disabled"

' Disable Function Discovery Resource Publication Service 
RunWait "sc config FDResPub start= disabled"

' Disable HomeGroup Listener Service 
RunWait "sc config HomeGroupListener start= disabled"

' Disable HomeGroup Provider Service 
RunWait "sc config HomeGroupProvider start= disabled"

If striSCSI = True Then 
    ' Disable Microsoft iSCSI Initiator Service 
    RunWait "sc config msiscsi start= disabled" 
  End If

' Disable Microsoft Software Shadow Copy Provider Service 
RunWait "sc config swprv start= disabled"

' Set Network List Service to Auto 
RunWait "sc config netprofm start= auto"

' Disable Offline Files
RunWait "sc config CscService start= disabled"

' Disable Optimize Drives Service 
RunWait "schtasks /change /tn ""microsoft\windows\defrag\ScheduledDefrag"" /disable" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Dfrg\BootOptimizeFunction\Enable", "N", "REG_SZ" 
RunWait "sc config defragsvc start= disabled"

' Disable Secure Socket Tunneling Protocol Service 
RunWait "sc config SstpSvc start= disabled"

' Disable Security Center
RunWait "sc config wscsvc start= disabled"

' Disable Sensor Monitoring Service 
RunWait "sc config SensrSvc start= disabled"

' Disable Shell Hardware Detection Service 
RunWait "sc config ShellHWDetection start= disabled"

' Disable SNMP Trap Service 
RunWait "sc config SNMPTRAP start= disabled"

' Disable SSDP Discovery Service 
RunWait "sc stop SSDPSRV" 
RunWait "sc config SSDPSRV start= disabled"

' Disable SuperFetch
RunWait "sc config SysMain start= disabled"

' Disable Telephony Service 
RunWait "sc config TapiSrv start= disabled"

If strAero = True Then 
    ' Disable Themes Service 
    RunWait "sc config Themes start= disabled" 
  End If

' Disable UPnP Device Host Service 
RunWait "sc config upnphost start= disabled"

' Disable Volume Shadow Copy Service 
RunWait "sc config VSS start= disabled"

' Disable Windows Backup Service 
RunWait "sc config SDRSVC start= disabled"

' Disable Windows Color System Service 
RunWait "sc config WcsPlugInService start= disabled"

' Disable Windows Connect Now - Config Registrar Service 
RunWait "sc config wcncsvc start= disabled"

' Disable Windows Defender Service 
RunWait "sc config WinDefend start= disabled"

' Disable Windows Error Reporting Service 
RunWait "sc config WerSvc start= disabled"

' Disable Windows Media Player Network Sharing Service 
RunWait "sc config WMPNetworkSvc start= disabled"

' Break out Windows Management Instrumentation Service 
RunWait "winmgmt /standalonehost" 
RunWait "sc config winmgmt group= COM Infrastructure"

' Disable Windows Search Service 
  If strSearch = True Then 
    RunWait "sc stop WSearch" 
    RunWait "sc config WSearch start= disabled" 
  End If

' Disable Windows Updates
RunWait "sc config wuauserv start= disabled"

' Disable WLAN AutoConfig Service 
RunWait "sc config Wlansvc start= disabled"

' Disable WWAN AutoConfig Service 
RunWait "sc config WwanSvc start= disabled"

 

' // ================ 
' // Computer Settings 
' // ================

' Disable Hard disk timeouts 
RunWait "POWERCFG /SETACVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e 0012ee47-9041-4b5d-9b77-535fba8b1442 6738e2c4-e8a5-4a42-b16a-e040e769756e 0" 
RunWait "POWERCFG /SETDCVALUEINDEX 381b4222-f694-41f0-9685-ff5bb260df2e 0012ee47-9041-4b5d-9b77-535fba8b1442 6738e2c4-e8a5-4a42-b16a-e040e769756e 0"

  ' Disable Action Center 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\HideSCAHealth", &H00000001, "REG_DWORD"

  ' Optimize Processor Resource Scheduling 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\PriorityControl\Win32PrioritySeparation", &H00000026, "REG_DWORD"

  ' Disable TCP/IP / Large Send Offload 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\DisableTaskOffload", &H00000001, "REG_DWORD"


  ' Disable hibernate 
RunWait "powercfg -h off"

  ' Disable NTFS Last Access Timestamps 
RunWait "FSUTIL behavior set disablelastaccess 1"


  If strMachPass = True Then 
    ' Disable Machine Account Password Changes 
    oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters\DisablePasswordChange", &H00000001, "REG_DWORD" 
  End If


  ' Disable memory dumps 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\CrashDumpEnabled", &H00000000, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\LogEvent", &H00000000, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\SendAlert", &H00000000, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl\AutoReboot", &H00000001, "REG_DWORD"


  ' Disable default system screensaver 
oShell.RegWrite "HKEY_USERS\.DEFAULT\Control Panel\Desktop\ScreenSaveActive", 0, "REG_DWORD"


  ' Increase service startup timeouts 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ServicesPipeTimeout", &H0002bf20, "REG_DWORD"


  ' Increase Disk I/O Timeout to 200 seconds. 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Disk\TimeOutValue", &H000000C8, "REG_DWORD"


  ' Disable Other Scheduled Tasks 
RunWait "schtasks /change /tn ""microsoft\windows\Application Experience\AitAgent"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Application Experience\ProgramDataUpdater"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Application Experience\StartupAppTask"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Autochk\Proxy"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Bluetooth\UninstallDeviceTask"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Customer Experience Improvement Program\BthSQM"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Customer Experience Improvement Program\Consolidator"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Customer Experience Improvement Program\KernelCeipTask"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Customer Experience Improvement Program\Uploader"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Customer Experience Improvement Program\UsbCeip"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Diagnosis\Scheduled"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticDataCollector"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\DiskDiagnostic\Microsoft-Windows-DiskDiagnosticResolver"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Maintenance\WinSAT"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\MobilePC\HotStart"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Power Efficiency Diagnostic\AnalyzeSystem"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\RAC\RacTask"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Ras\MobilityManager"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Registry\RegIdleBackup"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Shell\FamilySafetyMonitor"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Shell\FamilySafetyRefresh"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\SideShow\AutoWake"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\SideShow\GadgetManager"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\SideShow\SessionAgent"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\SideShow\SystemDataProviders"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\UPnP\UPnPHostConfig"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\WDI\ResolutionHost"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Windows Filtering Platform\BfeOnServiceStartTypeChange"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\Windows Media Sharing\UpdateLibrary"" /disable" 
RunWait "schtasks /change /tn ""microsoft\windows\WindowsBackup\ConfigNotification"" /disable"


  ' Configure Event Logs to 1028KB (Minimum size under Vista/7) and set retention to "overwrite" 
  Set oEventLogs = GetObject("winmgmts:{impersonationLevel=impersonate,(Security)}!//./root/cimv2").InstancesOf("Win32_NTEventLogFile") 
  For Each e in oEventLogs 
    e.MaxFileSize = 1052672 
    e.OverWritePolicy = "WhenNeeded" 
    e.OverWriteOutdated = 0 
    e.Put_ 
    e.ClearEventLog() 
  Next

oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\eventlog\Application\Retention", 0, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\eventlog\Security\Retention", 0, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\eventlog\System\Retention", 0, "REG_DWORD"


  ' Set PopUp Error Mode to "Neither" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Windows\ErrorMode", 2, "REG_DWORD"


  ' Disable bootlog and boot animation 
RunWait "bcdedit /set {default} bootlog no" 
RunWait "bcdedit /set {default} quietboot yes"


  ' Disable UAC secure desktop prompt 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\System\PromptOnSecureDesktop", &H00000000, "REG_DWORD"


  ' Disable New Network dialog 
RunWait "reg add HKLM\SYSTEM\CurrentControlSet\Control\Network\NewNetworkWindowOff"


  ' Disable AutoUpdate of drivers from WU 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\DriverSearching\searchorderConfig", 0, "REG_DWORD"

  ' Turn off Windows SideShow and install NetFX3 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Sideshow\Disabled", 1, "REG_DWORD" 
  If strNetFX3 = True Then 
    RunWait "dism /online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:" & NetFX3_Source & " /NoRestart" 
  End If

' Disable IE First Run Wizard and RSS Feeds 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Internet Explorer\Main\DisableFirstRunCustomize", 1, "REG_DWORD"

  ' Disable the ability to clear the paging file during shutdown 
oShell.RegWrite "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Memory Management\ClearPageFileAtShutdown", 0, "REG_DWORD"

' Disable Internet Explorer Enhanced Security Enhanced
oShell.RegWrite "HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A7-37EF-4b3f-8CFC-4F3A74704073\IsInstalled", 0, "REG_DWORD"
oShell.RegWrite "HKLM\SOFTWARE\Microsoft\Active Setup\Installed Components\{A509B1A8-37EF-4b3f-8CFC-4F3A74704073\IsInstalled", 0, "REG_DWORD"

' Disables Background Layout Service
oShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\OptimalLayout\EnabledAutoLayout", 0, "REG_DWORD"

' Disables CIFS Change Notifications
oShell.RegWrite "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoRemoteRecursiveEvents", &H00000001, "REG_DWORD"

  ' Disable Data Execution Prevention
RunWait "bcdedit /set nx AlwaysOff"

  ' Set Power Saving Scheme to High Performance
RunWait "powercfg -s 8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c" 

  ' Set Recovery Dump to Small
RunWait "wmic recoveros set DebugInfoType = 3" 

  ' Perform a disk cleanup 
  ' Automate by creating the reg checks corresponding to "cleanmgr /sageset:100" so we can use "sagerun:100" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Active Setup Temp Folders\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Downloaded Program Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Internet Cache Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Memory Dump Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Offline Pages Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Old ChkDsk Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Previous Installations\StateFlags0100", &H00000000, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Recycle Bin\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Setup Log Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\System error memory dump files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\System error minidump files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Temporary Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Temporary Setup Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Thumbnail Cache\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Upgrade Discarded Files\StateFlags0100", &H00000000, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Windows Error Reporting Archive Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Windows Error Reporting Queue Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Windows Error Reporting System Archive Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Windows Error Reporting System Queue Files\StateFlags0100", &H00000002, "REG_DWORD" 
oShell.RegWrite "HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer\VolumeCaches\Windows Upgrade Log Files\StateFlags0100", &H00000002, "REG_DWORD" 
RunWait "cleanmgr.exe /sagerun:100"

 

' // ============= 
' // User Settings 
' // =============

' Reduce menu show delay 
oShell.RegWrite "HKEY_CURRENT_USER\Control Panel\Desktop\MenuShowDelay", "0", "REG_SZ"


  ' Disable cursor blink 
oShell.RegWrite "HKEY_CURRENT_USER\Control Panel\Desktop\CursorBlinkRate", "-1", "REG_SZ" 
oShell.RegWrite "HKEY_CURRENT_USER\Control Panel\Desktop\DisableCursorBlink", &H00000001, "REG_DWORD"


  ' Force off-screen composition in IE 
oShell.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\Force Offscreen Composition", &H00000001, "REG_DWORD"


  ' Disable screensavers 
oShell.RegWrite "HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Control Panel\Desktop\ScreenSaveActive", "0", "REG_SZ" 
oShell.RegWrite "HKEY_CURRENT_USER\Control Panel\Desktop\ScreenSaveActive", "0", "REG_SZ" 
oShell.RegWrite "HKEY_USERS\.DEFAULT\Control Panel\Desktop\ScreenSaveActive", "0", "REG_SZ"


  ' Don't show window contents when dragging 
oShell.RegWrite "HKEY_CURRENT_USER\Control Panel\Desktop\DragFullWindows", "0", "REG_SZ"


  ' Don't show window minimize/maximize animations 
oShell.RegWrite "HKEY_CURRENT_USER\Control Panel\Desktop\WindowMetrics\MinAnimate", "0", "REG_SZ"


  ' Disable font smoothing 
oShell.RegWrite "HKEY_CURRENT_USER\Control Panel\Desktop\FontSmoothing", "0", "REG_SZ"


  ' Disable most other visual effects 
oShell.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects\VisualFXSetting", &H00000003, "REG_DWORD" 
oShell.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\ListviewAlphaSelect", &H00000000, "REG_DWORD" 
oShell.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\TaskbarAnimations", &H00000000, "REG_DWORD" 
oShell.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\ListviewWatermark", &H00000000, "REG_DWORD" 
oShell.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\ListviewShadow", &H00000000, "REG_DWORD" 
RegBinWrite "HKEY_CURRENT_USER\Control Panel\Desktop", "UserPreferencesMask", "90,12,01,80"


  ' Disable Action Center 
oShell.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\HideSCAHealth", &H00000001, "REG_DWORD"


  ' Disable IE Persistent Cache 
oShell.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Cache\Persistent", 0, "REG_DWORD" 
oShell.RegWrite "HKEY_CURRENT_USER\Software\Microsoft\Feeds\SyncStatus", 0, "REG_DWORD"


  ' Done 
WScript.Quit

 

 


' // ================ 
' // Functions
' // ================

Function Run(sFile) 
    Run = oShell.Run(sFile, 1, False) 
  End Function


  Function RunWait(sFile) 
    RunWait = oShell.Run(sFile, 1, True) 
  End Function


  Function RunWaitHidden(sFile) 
    RunWaitHidden = oShell.Run(sFile, 0, True) 
  End Function


  Function IsServer() 
    IsServer = False 
    On Error Resume Next 
    For Each objOS in GetObject("winmgmts:").InstancesOf ("Win32_OperatingSystem") 
        If objOS.ProductType = 1 Then IsServer = False 
        If objOS.ProductType = 2 Or ObjOS.ProductType = 3 Then IsServer = True 
    Next 
  End Function


  Sub RegBinWrite (key, value, data) 
    key = "[" & key & "]"

    If value <> "@" then 
        value = chr(34) & value & chr(34) 
    End if

    valString = value & "=" & "hex:" & data

    tempFile = GetTempDir() & "\regbinaryimport.reg" 
    Set txtStream = oFSO.CreateTextFile(tempFile,true) 
    txtStream.WriteLine("Windows Registry Editor Version 5.00") 
    txtStream.WriteLine(key) 
    txtStream.WriteLine(valString) 
    txtStream.Close

    oShell.Run "regedit.exe /s """ & tempFile & """", 1, true

    oFSO.DeleteFile tempFile 
  End Sub


  Function GetTEMPDir() 
    GetTEMPDir = oEnv("TEMP") 
    If InStr(GetTEMPDir, "%") Then 
        GetTEMPDir = oShell.ExpandEnvironmentStrings(GetTEMPDir) 
    End If 
  End Function 
  
Lien vers le fichier : cliquez ici Copier le code

Pages Web

Site WebDescription
Citrix Windows 8 and Server 2012 Optimization GuideArticle sur les blogs Citrix sur la question

2