JScript и WMI
От: Владимир Пасашников Россия http://pasashnikov.u9.ru
Дата: 15.11.04 13:03
Оценка:
Делаю следующее.

WbemLocator = new ActiveXObject("WbemScripting.SWbemLocator");
WMIReg = WbemLocator.ConnectServer(null, "root\\default").Get("StdRegProv");

oMethod = WMIReg.Methods_.Item ("SetBinaryValue");
oInParam = oMethod.InParameters.SpawnInstance_();
oInParam.hDefKey = HKEY_CURRENT_USER;
oInParam.sSubKeyName = RegSignaturesPath;
oInParam.sValueName = "New Signature";
oInParam.uValue = ????

Собственно, вопрос, что должно быть вместо ???? Сам код рабочий, но не могу понять что ожидает получить именно метод SetBinaryValue.
С остальными типами параметров всё понятно.

15.11.04 16:04: Перенесено модератором из 'Java' — Blazkowicz
15.11.04 16:50: Перенесено модератором из 'Веб программирование' — TK
Re: JScript и WMI
От: nii_im_b Мухосранск  
Дата: 15.11.04 14:11
Оценка:
Здравствуйте, Владимир Пасашников, Вы писали:

ВП>Делаю следующее.


ВП>WbemLocator = new ActiveXObject("WbemScripting.SWbemLocator");

ВП>WMIReg = WbemLocator.ConnectServer(null, "root\\default").Get("StdRegProv");

ВП>oMethod = WMIReg.Methods_.Item ("SetBinaryValue");

ВП>oInParam = oMethod.InParameters.SpawnInstance_();
ВП>oInParam.hDefKey = HKEY_CURRENT_USER;
ВП>oInParam.sSubKeyName = RegSignaturesPath;
ВП>oInParam.sValueName = "New Signature";
ВП>oInParam.uValue = ????


WMIReg — чё за объект?

ВП>Собственно, вопрос, что должно быть вместо ???? Сам код рабочий, но не могу понять что ожидает получить именно метод SetBinaryValue.

ВП>С остальными типами параметров всё понятно.
Re[2]: JScript и WMI
От: Владимир Пасашников Россия http://pasashnikov.u9.ru
Дата: 15.11.04 14:36
Оценка:
Здравствуйте, nii_im_b, Вы писали:

Удалено избыточное цитирование

__>WMIReg — чё за объект?

Собственно это объект который предоставляет доступ к реестру. Это всё работает. Если я зову функцию создания ключа, ключ создаётся. Значение ключа тоже получается. DWORD, SZ и всё остальное записывается. А вот REG_BINARY Уже день сижу.
Re[3]: JScript и WMI
От: nii_im_b Мухосранск  
Дата: 15.11.04 14:49
Оценка:
Здравствуйте, Владимир Пасашников, Вы писали:


ВП>>>Собственно, вопрос, что должно быть вместо ???? Сам код рабочий, но не могу понять что ожидает получить именно метод SetBinaryValue.

ВП>>>С остальными типами параметров всё понятно.

по идее там должен быть массив двоичных значений
Re[3]: JScript и WMI
От: nii_im_b Мухосранск  
Дата: 15.11.04 15:08
Оценка:
Здравствуйте, Владимир Пасашников, Вы писали:

Удалено избыточное цитирование

__>>WMIReg — чё за объект?

ВП>Собственно это объект который предоставляет доступ к реестру. Это всё работает. Если я зову функцию создания ключа, ключ создаётся. Значение ключа тоже получается. DWORD, SZ и всё остальное записывается. А вот REG_BINARY Уже день сижу.

по идее тулить можно всё что угодно типа (не знаю как с синтаксисом) uValue = Array('a','b','c')
Re[3]: JScript и WMI
От: Владимир Пасашников Россия http://pasashnikov.u9.ru
Дата: 16.11.04 05:25
Оценка:
Удалено избыточное цитирование

Добавлю, что после многочисленных переносов их форума в форум. Потерялся смысл написанного. Т.е. потерялся язык на котором это всё писано — JScript.
Re[4]: JScript и WMI
От: Владимир Пасашников Россия http://pasashnikov.u9.ru
Дата: 16.11.04 05:28
Оценка:
Здравствуйте, nii_im_b, Вы писали:

__>Здравствуйте, Владимир Пасашников, Вы писали:



ВП>>>>Собственно, вопрос, что должно быть вместо ???? Сам код рабочий, но не могу понять что ожидает получить именно метод SetBinaryValue.

ВП>>>>С остальными типами параметров всё понятно.

__>по идее там должен быть массив двоичных значений

Угу... Не верьте MSDN.
Ничего там нет. Даже если я вообще не инициализирую переменную, в реестр пишется "01 02". Вот сижу и думаю, чего же это могло быть. По идеи это должен быть SafeArray. Но у JScript нету типов данных. в общем ничего непонятно.

Гуру помогите, погибаю!!!
Re[4]: JScript и WMI
От: nii_im_b Мухосранск  
Дата: 16.11.04 09:17
Оценка:
Здравствуйте, Владимир Пасашников, Вы писали:

Удалено избыточное цитирование

o = new ActiveXObject("Wscript.Shell");
//o.regWrite("HKCU\\Test\\dwordParam", 17, "REG_DWORD");
o.regWrite("HKCU\\Test\\binaryParam", 17, "REG_BINARY");
//o.regWrite("HKCU\\Test\\szParam", 17, "REG_SZ");
//o.regWrite("HKCU\\Test\\expand_szParam", 17, "REG_EXPAND_SZ")



попробуй так. Wscript.Shell тоже стандартный активХ
Re[5]: JScript и WMI
От: Владимир Пасашников Россия http://pasashnikov.u9.ru
Дата: 16.11.04 10:17
Оценка:
Здравствуйте, nii_im_b, Вы писали:

Удалено избыточное цитирование

__><script>

__>o = new ActiveXObject("Wscript.Shell");
__>//o.regWrite("HKCU\\Test\\dwordParam", 17, "REG_DWORD");
__>o.regWrite("HKCU\\Test\\binaryParam", 17, "REG_BINARY");
Не всегда в MSDN пишут дурь, хотя иногда её и пишут. В общем писать в REG_BINARY через WScript.Shell можно только то что влезает в тип DWORD. Вот и всё. Поэтому и начались поиски альтернативного метода. Так что
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.