Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Смена картинки на десктопе (http://forum.oszone.net/showthread.php?t=245163)

RRRinat 21-10-2012 21:02 2009772

Смена картинки на десктопе
 
Доброго вечера!
Меняю картинку на рабочем столе у определенного юзера.
Код:

WshShell.regWrite("HKEY_USERS\\"+oItem.SID+"\\Control Panel\Desktop\Wallpaper", "C:\po.bmp", "REG_SZ");
WScript.Echo(WshShell.RegRead("HKEY_USERS\\"+oItem.SID+"\\Control Panel\Desktop\Wallpaper"));

Все бы хорошо, скрипт показывает, что в этой ветке реестра действительно есть запись "C:\po.bmp".
Однако открываю regedit и вижу что там ничего не поменялось. Рабочий стол как оставался, так и остается. Перезагрузка также не помогает.

Однако, если после перезагрузки выполнить:
WScript.Echo(WshShell.RegRead("HKEY_USERS\\"+oItem.SID+"\\Control Panel\Desktop\Wallpaper"));
У нас показывает, что запись в реестре есть типа: "C:\po.bmp".
Однако в реестре ничего нет.
Пробовал как и HKEY_USERS\\sid, так и просто HKCU. (там уж точно не ошибешься!). Однако результат одинаковый.
По ходу дела записываем куда-то не туда... но я не вижу своей ошибки.

Iska 21-10-2012 22:10 2009819

Коллега, я начинаю сомневаться, что JScript Вам хорошо знаком. Вы делаете одни и те же ошибки начального уровня:
Код:

WshShell.regWrite("HKEY_USERS\\"+oItem.SID+"\\Control Panel\\Desktop\\Wallpaper", "C:\\po.bmp", "REG_SZ");
WScript.Echo(WshShell.RegRead("HKEY_USERS\\"+oItem.SID+"\\Desktop\\Wallpaper"));


RRRinat 21-10-2012 23:15 2009849

Цитата:

начинаю сомневаться, что JScript Вам хорошо знаком
Да что вы. Знаю немного синтаксис, и то, из за того что он с javascript'ом схож. Да, и был невнимателен что-то я сейчас. Взял из какого-то примера, дописал свое. А что там две черты, а не одна нужна я как-то и не заметил даже

Да, вещь работает. спасибо большое вам!


Время: 20:05.

Время: 20:05.
© OSzone.net 2001-