<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBS:Как получить значение элемента массива?]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=10424&amp;type=atom" />
	<updated>2015-02-23T22:52:21Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=10424</id>
		<entry>
			<title type="html"><![CDATA[Re: VBS:Как получить значение элемента массива?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=91875#p91875" />
			<content type="html"><![CDATA[<p>Для начала уберите «On Error Resume Next» из кода.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2015-02-23T22:52:21Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=91875#p91875</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[VBS:Как получить значение элемента массива?]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=91687#p91687" />
			<content type="html"><![CDATA[<p>Задача такая:<br />Надо из AD достать атрибуты &quot;managedBy&quot; для класса computer и &quot;managedObjects&quot; для класса user.</p><p>скрипт такой:<br /></p><div class="codebox"><pre><code>
On Error Resume Next

LDAPServerName = &quot;10.10.10.10/dc=domain,dc=local&quot;
Comp = &quot;gli&quot;
User = &quot;vvte&quot;

Set ConnADODB = CreateObject(&quot;ADODB.Connection&quot;)
ConnADODB.Provider = &quot;ADSDSOObject&quot;
ConnADODB.Open &quot;ADs Provider&quot;

query1 = &quot;&lt;LDAP://&quot; &amp; LDAPServerName &amp; &quot;&gt;;(&amp;(ObjectClass=computer)(name=*&quot; &amp; Comp &amp; &quot;*));managedBy;subtree&quot;
Set RS1 = ConnADODB.Execute(cstr(query1))
Set oUser = RS1(&quot;managedBy&quot;)
temp = (CStr(oUser))
WScript.Echo temp
 
query2 = &quot;&lt;LDAP://&quot; &amp; LDAPServerName &amp; &quot;&gt;;(&amp;(objectCategory=person)(ObjectClass=user)(sAMAccountName=*&quot; &amp; User &amp; &quot;*));sAMAccountName, managedObjects;subtree&quot;
Set RS2 = ConnADODB.Execute(cstr(query2))
arr = RS2.GetRows
&#039;arr = RS2.GetRows(,,(1))
</code></pre></div><p>Первая часть (ищем имя пользователя по атрибуту managedBy) работает отлично.<br />Во второй части (ищем имена компов по атрибуту managedObjects) возникает затык. в дебаггере видно, что значения атрибута переданы в массив arr, но как их оттуда достать для использования?</p><p>Вот скриншот vbsedit<br /><a href="http://hostingkartinok.com/show-image.php?id=66f1f4752ca6a2e05585818a1864b5b4"><span class="postimg"><img src="http://s7.hostingkartinok.com/uploads/images/2015/02/66f1f4752ca6a2e05585818a1864b5b4.jpg" alt="http://s7.hostingkartinok.com/uploads/images/2015/02/66f1f4752ca6a2e05585818a1864b5b4.jpg" /></span></a><br />Ubound не работает, что ни пишу всегда ноль возвращает. Rank тоже не работает. Или он только в VB? <br />Меня интересуют последние две строчки на скрине.</p>]]></content>
			<author>
				<name><![CDATA[ghogust]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=32887</uri>
			</author>
			<updated>2015-02-19T11:14:33Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=91687#p91687</id>
		</entry>
</feed>
