<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; VBScript: интеграция с PowerShell с помощью компонента ActiveXPosh]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=2816</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=2816&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBScript: интеграция с PowerShell с помощью компонента ActiveXPosh».]]></description>
		<lastBuildDate>Fri, 20 Feb 2009 14:21:52 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: VBScript: интеграция с PowerShell с помощью компонента ActiveXPosh]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=19787#p19787</link>
			<description><![CDATA[<p>Закачка файла по HTTP средствами .NET:<br /></p><div class="codebox"><pre><code>Set oPosh = CreateObject(&quot;SAPIEN.ActiveXPoSH&quot;)
oPosh.Init(vbFalse)
oPosh.Execute(&quot;$Client = new-object System.Net.WebClient&quot;)
Command = &quot;$Client.DownloadFile(&#039;http://www.script-coding.com/IE_OLE.zip&#039;, &#039;C:\Temp\test.zip&#039;)&quot;
WScript.Echo &quot;Загрузка...&quot;
oPosh.Execute(Command)
Set FSO = CreateObject(&quot;Scripting.FileSystemObject&quot;)
If FSO.FileExists(&quot;C:\Temp\test.htm&quot;) Then
    WScript.Echo &quot;Загрузка завершена.&quot;
Else
    WScript.Echo &quot;Загрузка не удалась.&quot;
End If</code></pre></div><p>Получение списка служб с построчным разбором вывода:<br /></p><div class="codebox"><pre><code>Set oPosh = CreateObject(&quot;SAPIEN.ActiveXPoSH&quot;)
oPosh.Init(vbFalse)
oPosh.OutputMode = 2 &#039; OUTPUT_BUFFER
oPosh.Execute(&quot;Get-WmiObject -class Win32_Service | Format-Table -property Name, State&quot;)
For Each str In oPosh.Output
    WScript.Echo str
Next</code></pre></div><p>Получение строкового значения вычисленного выражения PowerShell:<br /></p><div class="codebox"><pre><code>Set oPosh = CreateObject(&quot;SAPIEN.ActiveXPoSH&quot;)
oPosh.Init(vbFalse)
WScript.Echo oPosh.GetValue(&quot;$PSHOME&quot;)</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (The gray Cardinal)]]></author>
			<pubDate>Fri, 20 Feb 2009 14:21:52 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=19787#p19787</guid>
		</item>
		<item>
			<title><![CDATA[VBScript: интеграция с PowerShell с помощью компонента ActiveXPosh]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=19786#p19786</link>
			<description><![CDATA[<p>Бесплатный COM-сервер от компании SAPIEN <strong>ActiveX PowerShell (ActiveXPosh)</strong> осуществляет довольно гибкую интеграцию с Powershell и позволяет использовать команд-леты и сценарии Powershell изнутри любого языка сценариев. Компонент доступен на странице <a href="http://www.primaltools.com/freetools/">http://www.primaltools.com/freetools/</a>. При переходе по ссылке для скачивания вас попросят указать имя и e-mail, после чего на e-mail придёт собственно ссылка на скачивание. В поставку включены примеры работы документация в формате PDF, объект имеет 10 свойств и методов. Дистрибутив (инсталлятор) имеет размер менее 1 Мб.</p><p>Саму PowerShell, которая должна быть установлена, можно скачать с сайта <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=30125a46-b97c-4704-aa10-605e809d5933&amp;displaylang=ru">Microsoft</a> (инсталлятор для Windows XP имеет размер порядка 1.7 Мб).</p><p>Простейший пример выводит список запущенных процессов:<br /></p><div class="codebox"><pre><code>Set oPosh = CreateObject(&quot;SAPIEN.ActiveXPoSH&quot;)
oPosh.Init(vbFalse)
oPosh.OutputMode = 2 &#039; OUTPUT_BUFFER
oPosh.Execute(&quot;get-process&quot;)
WScript.Echo oPosh.OutputString</code></pre></div><p>Проверка существования процесса:<br /></p><div class="codebox"><pre><code>Set oPosh = CreateObject(&quot;SAPIEN.ActiveXPoSH&quot;)
oPosh.Init(vbFalse)
If oPosh.Eval(&quot;get-process winword&quot;) = vbTrue Then
    WScript.Echo &quot;Microsoft Word запущен.&quot;
Else
    WScript.Echo &quot;Microsoft Word НЕ запущен.&quot;
End If</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (The gray Cardinal)]]></author>
			<pubDate>Fri, 20 Feb 2009 14:21:11 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=19786#p19786</guid>
		</item>
	</channel>
</rss>
