<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; VBS: Добавить запись в DNS]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=15841&amp;type=atom" />
	<updated>2020-11-20T12:43:44Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=15841</id>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Добавить запись в DNS]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=143573#p143573" />
			<content type="html"><![CDATA[<p><strong>inock</strong>, колитесь, коллега <img src="//forum.script-coding.com/img/smilies/wink.png" width="15" height="15" />.</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2020-11-20T12:43:44Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=143573#p143573</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Добавить запись в DNS]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=143571#p143571" />
			<content type="html"><![CDATA[<p>Дело было не в бобине. Заработало.</p>]]></content>
			<author>
				<name><![CDATA[inock]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25049</uri>
			</author>
			<updated>2020-11-20T11:50:54Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=143571#p143571</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Добавить запись в DNS]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=143567#p143567" />
			<content type="html"><![CDATA[<p><strong>inock</strong>, а привилегий достаточно? Не пробовали задавать привилегии для Wbem в скрипте?</p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2020-11-19T16:40:45Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=143567#p143567</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Добавить запись в DNS]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=143565#p143565" />
			<content type="html"><![CDATA[<p>Powershell здесь не в тему, но тоже не работает <img src="//forum.script-coding.com/img/smilies/sad.png" width="15" height="15" />(</p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p># Блок переменных<br /># $DNSServer - NetBIOS имя сервера DNS<br /># $DNSFZone - DNS зона прямого просмотра<br /># $DataFile - Путь к файлу CSV с входными данными<br />#<br />$DNSServer = &quot;bte-dc-01&quot;<br />$DNSFZone = &quot;ats.teplo.local&quot;<br />$DataFile = &quot;C:\TEMP\ats\Create-A-Records.csv&quot;<br />#<br /># Подключение к удалённому экземпляру WMI<br /># и обработка входных данных файла <br />#<br />$DNSRR = [WmiClass]&quot;\\$DNSServer\root\MicrosoftDNS:MicrosoftDNS_ResourceRecord&quot;<br />$ConvFile = $DataFile + &quot;_unicode&quot;<br />Get-Content $DataFile | Set-Content $ConvFile -Encoding Unicode<br />Import-CSV $ConvFile -Delimiter &quot;;&quot; | ForEach-Object { <br />$FQDN = $_.HostName + &quot;.&quot; + $DNSFZone<br />$IP = $_.HostIP<br />$TextA = &quot;$FQDN IN A $IP&quot; <br />echo&nbsp; $TextA<br />echo $DNSFZone<br />echo $DNSServer<br />$DNSRR.CreateInstanceFromTextRepresentation($DNSServer,$DNSFZone,$TextA)<br />}<br />Remove-Item $ConvFile</p></div></div><div class="codebox"><pre><code>
C:\TEMP\ats&gt;powershell -F DNS-Create-A-Records-from-File.ps1
1063.ats.teplo.local IN A 10.32.99.166
ats.teplo.local
bte-dc-01
Исключение при вызове &quot;CreateInstanceFromTextRepresentation&quot; : &quot;Generic failure
 &quot;
C:\TEMP\ats\DNS-Create-A-Records-from-File.ps1:23 знак:44
+ $DNSRR.CreateInstanceFromTextRepresentation &lt;&lt;&lt;&lt; ($DNSServer,$DNSFZone,$TextA
)
    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    + FullyQualifiedErrorId : WMIMethodException
</code></pre></div><p>При этом, с оснастки mmc, все работает нормально, без проблем.</p>]]></content>
			<author>
				<name><![CDATA[inock]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25049</uri>
			</author>
			<updated>2020-11-19T14:23:43Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=143565#p143565</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: VBS: Добавить запись в DNS]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=143564#p143564" />
			<content type="html"><![CDATA[<p>Думаю, дело все-таки не в коде...</p><p>Вот второй вариант, но метод так же не выполняется</p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>strHostName = &quot;test&quot;<br />strZoneName = &quot;ats.teplo.local&quot;<br />strIP = &quot;192.168.0.5&quot;<br />strServer = &quot;bte-dc-01&quot;</p><p>&#039;Set objDNS = GetObject(&quot;winMgmts:root\MicrosoftDNS&quot;)<br />Set objLocator = CreateObject(&quot;WbemScripting.SWbemLocator&quot;)<br />Set objDNS = objLocator.ConnectServer (strServer, &quot;root\MicrosoftDNS&quot;)<br />Set objRR = objDNS.Get(&quot;MicrosoftDNS_ResourceRecord&quot;)<br />Set objDNSServer = objDNS.Get(&quot;MicrosoftDNS_Server.Name=&quot;&quot;.&quot;&quot;&quot;)</p><br /><p>Dim strNull<br />strFullHost = strHostName &amp; &quot;.&quot; &amp; strZoneName &amp; &quot;. IN A &quot; &amp; strIP<br />wscript.echo strFullHost<br />strNull = objRR.CreateInstanceFromTextRepresentation( _<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; objDNSServer.Name, _<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; strZoneName, _<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; strFullHost, _<br />&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; objOutParam) </p><p>Set objRR2 = objDNS.Get(objOutParam)<br />WScript.Echo &quot;Created Record: &quot; &amp; objRR2.TextRepresentation</p></div></div><div class="codebox"><pre><code>C:\TEMP\ats&gt;cscript test__.vbs
test.ats.teplo.local. IN A 192.168.0.5
C:\TEMP\ats\test__.vbs(16, 1) SWbemObjectEx: Generic failure</code></pre></div>]]></content>
			<author>
				<name><![CDATA[inock]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25049</uri>
			</author>
			<updated>2020-11-19T14:17:00Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=143564#p143564</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[VBS: Добавить запись в DNS]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=143552#p143552" />
			<content type="html"><![CDATA[<p>Граждане, помогите написать код, добавляющий A-запись в днс?<br />Интернет облазил, нормальных примеров на VBS нет, только на PS.</p><p>Пока у меня так. Что делать дальше - никак не соображу.</p><div class="fancy_spoiler_switcher"><div class="fancy_spoiler_switcher_header" data-lang-open="открыть спойлер" data-lang-close="скрыть спойлер"><strong>+</strong>&nbsp;открыть спойлер</div><div class="fancy_spoiler"><p>strHostName = &quot;test&quot;<br />strZoneName = &quot;ats.teplo.local&quot;<br />strIP = &quot;192.168.0.5&quot;<br />strServer = &quot;bte-dc-01&quot;<br />strNameSpace = &quot;root\microsoftDNS&quot;</p><p>Set objLocator = CreateObject(&quot;WbemScripting.SWbemLocator&quot;)<br />Set objService = objLocator.ConnectServer (strServer, strNameSpace)<br />Set objDNS = objService.Get(&quot;MicrosoftDNS_ResourceRecord&quot;)<br />Set objMethod = objDNS.Methods_(&quot;CreateInstanceFromTextRepresentation&quot;)</p><p>&#039;wscript.quit</p><p>Set ObjInParam = objMethod.inParameters.SpawnInstance_()<br />ObjInParam.TextRepresentation = strHostName &amp; &quot;.&quot; &amp; strZoneName &amp; &quot;. IN A &quot; &amp; strIP<br />ObjInParam.DnsServerName = strServer<br />ObjInParam.ContainerName = strZoneName</p><p>wscript.echo ObjInParam.DnsServerName<br />wscript.echo ObjInParam.ContainerName<br />wscript.echo ObjInParam.TextRepresentation</p><p>Set ObjRR = objDNS.ExecMethod_(&quot;CreateInstanceFromTextRepresentation&quot;, ObjInParam)</p></div></div><p>Что имеем на выходе:<br /></p><div class="codebox"><pre><code>bte-dc-01
ats.teplo.local
test.ats.teplo.local. IN A 192.168.0.5
C:\TEMP\ats\test.vbs(23, 1) SWbemObjectEx: Generic failure</code></pre></div>]]></content>
			<author>
				<name><![CDATA[inock]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25049</uri>
			</author>
			<updated>2020-11-19T09:20:06Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=143552#p143552</id>
		</entry>
</feed>
