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

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

RRRinat 21-10-2012 18:45 2009671

JS код - должен выдавать SID пользователя
 
Добрый день!
JS код (должен выдавать SID пользователя):
Код:

var name = '1';
var comp = '.';
var service = GetObject("winmgmts:\\.\root\CIMV2");
var item = '';
var items = service.ExecQuery("SELECT SID FROM Win32_UserAccount WHERE Name = '"+name+"'");

for (item in items)
{
 WScript.Echo(item.name);
  WScript.Echo("\n");
}

Выводит:
C:\Users\1\Dropbox\scripts\windows\my.js(4, 1) (null): 0x80041021
Ругается я так понимаю на это:
?
Цитата:

var service = GetObject("winmgmts:\\.\root\CIMV2");
Притом через vbs срабатывает все отлично, выдает sid.
Можеть где-то я ошибся тут?

Iska 21-10-2012 18:53 2009679

1. JScript не VBScript, там свои принципы работы.
2. JScript не слишком приспособлен для работы с Wbem. Почему Вы остановили свой выбор именно на нём?
Код:

var sUserName      = "1";
var sMachineName    = ".";
var oSWbemServiceEx = GetObject("winmgmts:\\\\" + sMachineName + "\\root\\CimV2");
var oItem;
var сItems = new Enumerator(oSWbemServiceEx.ExecQuery("SELECT Name, SID FROM Win32_UserAccount WHERE Name = '" + sUserName + "'"));

for (; !сItems.atEnd(); сItems.moveNext())
{
    oItem = сItems.item();
    WScript.Echo(oItem.Name + " " + oItem.SID);
}


RRRinat 21-10-2012 19:05 2009683

Спасибо! Код работает.

Скажем так. Его синтаксис мне знаком, в отличии от VBS. Можеть быть сейчас и написал на VBS, но уже поздно метаться, многое сделано.

Iska 21-10-2012 19:11 2009691

Цитата:

Цитата RRRinat
Скажем так. Его синтаксис мне знаком, в отличии от VBS. Можеть быть сейчас и написал на VBS, но уже поздно метаться, многое сделано. »

Спасибо, ясно. Я сам такой. Худо-бедно могу в JScript ориентироваться, но как только в употребление идут сугубо языково-зависимые средства, например, «.prototype», мне сразу приходится идти в документацию.

RRRinat, возможно, в будущем Вам предстоит столкнуться ещё с таким, специфичным для JScript, способом: JScript: вызов методов WMI с выходными параметрами.


Время: 10:05.

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