Войти

Показать полную графическую версию : установить обои рабочего стола для всех машин в домене через политики?


God-of-Chaos
01-09-2009, 14:42
как через груповые политики установить можно на все компы в домене один рисунок?

DImaN!
03-09-2009, 10:01
God-of-Chaos, можете поступить так:
На сервере открыть "Редактор GPO инициирующей прграммы групповой политики", где выбираете в своем домене "Новый начальный объект групповой политики". Далее переходите в "Конфигурация пользователя" > "Административные шаблоны" > "Рабочий стол" > "Рабочий стол". Находите политику "Фоновые рисунки рабочего стола". Выбираете необходимый для вас рисунок и стиль фонового рисунка. После следующего логона у всех пользователей должены быть одинаковые обои.

Anton04
08-09-2009, 10:55
Уточнение.

Обои должны находится на сервере в расшаренной папке, доступ к папке должны иметь "Прошедшие проверку" на чтение. И соотсвественно, путь в политике выбирать через сеть, т.е. должен быть вида \\server\shared\walpapers\my.bmp

Taras_J
27-01-2010, 09:30
Такого типа VBS скрипт отрабатывает у меня и ставит обои нужного разрешения:
strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colItems = objWMIService.ExecQuery _
("Select * From Win32_DisplayConfiguration")

For Each objItem in colItems


dim wshShell
dim sUserName'


' --------- FOR 1920 x 1200 -------------


If objItem.PelsWidth="1920" AND objItem.PelsHeight="1200" then

Set wshShell = WScript.CreateObject("WScript.Shell")
sUserName = wshShell.ExpandEnvironmentStrings("%USERNAME%")

Set oShell = CreateObject("WScript.Shell")
Set oFSO = CreateObject("Scripting.FileSystemObject")

sWinDir = oFSO.GetSpecialFolder(0)
sWallPaper = "\\hyper\GP Soft\Wallpapers\New\logo_CMSO_1920-1200.bmp"

oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", sWallPaper

oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

END IF

' --------- FOR 1280 x 1024 -------------


If objItem.PelsWidth="1280" AND objItem.PelsHeight="1024" then

Set wshShell = WScript.CreateObject("WScript.Shell")
sUserName = wshShell.ExpandEnvironmentStrings("%USERNAME%")

Set oShell = CreateObject("WScript.Shell")
Set oFSO = CreateObject("Scripting.FileSystemObject")

sWinDir = oFSO.GetSpecialFolder(0)
sWallPaper = "\\hyper\GP Soft\Wallpapers\New\logo_CMSO_1280-1024.bmp"

oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", sWallPaper

oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

END IF

' --------- FOR 1280 x 800 -------------


If objItem.PelsWidth="1280" AND objItem.PelsHeight="800" then

Set wshShell = WScript.CreateObject("WScript.Shell")
sUserName = wshShell.ExpandEnvironmentStrings("%USERNAME%")

Set oShell = CreateObject("WScript.Shell")
Set oFSO = CreateObject("Scripting.FileSystemObject")

sWinDir = oFSO.GetSpecialFolder(0)
sWallPaper = "\\hyper\GP Soft\Wallpapers\New\logo_CMSO_1280-800.bmp"

oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", sWallPaper

oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

END IF

' --------- FOR 1024 x 768 -------------


If objItem.PelsWidth="1024" AND objItem.PelsHeight="768" then

Set wshShell = WScript.CreateObject("WScript.Shell")
sUserName = wshShell.ExpandEnvironmentStrings("%USERNAME%")

Set oShell = CreateObject("WScript.Shell")
Set oFSO = CreateObject("Scripting.FileSystemObject")

sWinDir = oFSO.GetSpecialFolder(0)
sWallPaper = "\\hyper\GP Soft\Wallpapers\NEW\logo_CMSO_1024-768.bmp"

oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", sWallPaper

oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

END IF

' --------- FOR 800 x 600 -------------


If objItem.PelsWidth="800" AND objItem.PelsHeight="600" then

Set wshShell = WScript.CreateObject("WScript.Shell")
sUserName = wshShell.ExpandEnvironmentStrings("%USERNAME%")

Set oShell = CreateObject("WScript.Shell")
Set oFSO = CreateObject("Scripting.FileSystemObject")

sWinDir = oFSO.GetSpecialFolder(0)
sWallPaper = "\\hyper\GP Soft\Wallpapers\Main\logo_CMSO_1280-1024.bmp"

oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", sWallPaper

oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

END IF

' --------- FOR 1400 x 1050 -------------


If objItem.PelsWidth="1400" AND objItem.PelsHeight="1050" then

Set wshShell = WScript.CreateObject("WScript.Shell")
sUserName = wshShell.ExpandEnvironmentStrings("%USERNAME%")

Set oShell = CreateObject("WScript.Shell")
Set oFSO = CreateObject("Scripting.FileSystemObject")

sWinDir = oFSO.GetSpecialFolder(0)
sWallPaper = "\\hyper\GP Soft\Wallpapers\Main\logo_CMSO_1680-1050.bmp"

oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", sWallPaper

oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

END IF


' --------- FOR 1680 x 1050 -------------


If objItem.PelsWidth="1680" AND objItem.PelsHeight="1050" then

Set wshShell = WScript.CreateObject("WScript.Shell")
sUserName = wshShell.ExpandEnvironmentStrings("%USERNAME%")

Set oShell = CreateObject("WScript.Shell")
Set oFSO = CreateObject("Scripting.FileSystemObject")

sWinDir = oFSO.GetSpecialFolder(0)
sWallPaper = "\\hyper\GP Soft\Wallpapers\New\logo_CMSO_1680-1050.bmp"

oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", sWallPaper

oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True

END IF

Next

exo
12-05-2010, 14:20
Доброго дня, а как настроить обои рабочего стола в 2008 R2? не могу никак найти в персонализации...

ппц...
два пути:
1 - правый клик на картинке - set as desktop background.
2 - кидаем картинки в C:\Windows\Web\Wallpaper\Windows. После этого их можно выбирать в персонализации.

inxss
24-05-2010, 14:02
Привет! Скрипт сам по себе работает, но при моих 1680*1050 отрабатывает мне установку волпапера 1024*768
и где грабли понять не могу...

atx
25-06-2013, 10:44
у меня тоже ставит 1024*768
кто подскажет как заставить скрипт выбирать разрешение?
нужно что бы работало на ХР и W7

James Marsh
01-07-2013, 16:06
Держите рабочий конструктор

vbs, вызывать через cmd

strComputer = "."

Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colItems = objWMIService.ExecQuery _
("Select * From Win32_DesktopMonitor")

For Each objItem in colItems

filename = "%ТУТ ПИШЕМ ГДЕ ЛЕЖАТ ФАЙЛЫ С ОБОЯМИ%" & objItem.ScreenWidth & "_" & objItem.ScreenHeight & ".bmp"

'msgbox (filename)

Set wshShell = WScript.CreateObject("WScript.Shell")

Set oShell = CreateObject("WScript.Shell")

Set oFSO = CreateObject("Scripting.FileSystemObject")

sWinDir = oFSO.GetSpecialFolder(0)

If oFSO.FileExists(filename) Then

'sWallPaper = filename

oShell.RegWrite "HKCU\Control Panel\Desktop\Wallpaper", filename
oShell.RegWrite "HKCU\Control Panel\Desktop\TileWallpaper", 1

oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True
Else
msgbox ("Скажите системному администратору что файл " & filename & " отсутствует!")
End If

If objItem.ScreenHeight >0 Then
Exit For
End If
Next



Ну и плюс надо "нафотошопить" обои под те разрешения мониторов, которые у вас есть. С именами файлов 800_600.bmp, 1024_768.bmp...

sergsplinter
06-03-2014, 00:05
vbs, вызывать через cmd »
Прошу извинения, не силён в скриптах, но как понять: vbs, вызывать через cmd, хотя знаю что такое vbs и cmd??

James Marsh
06-03-2014, 22:49
Цитата sergsplinter:
vbs, вызывать через cmd »
CScript \\%сетевая_шара%\wallpaper.vbs /NologoСохранить как cmd и запихнуть в групповую политику.

ПыСы В терминальных сессиях server 2008r2 / 2012 / 2012r2 вся конструкция пишет "Скажите системному администратору что файл _.bmp отсутствует!". Так и не разобрался чего.




© OSzone.net 2001-2012