<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; VBScript: работа с zip-архивами с помощью компонента Zip Component]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=2842</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=2842&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBScript: работа с zip-архивами с помощью компонента Zip Component».]]></description>
		<lastBuildDate>Wed, 25 Feb 2009 10:57:03 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[VBScript: работа с zip-архивами с помощью компонента Zip Component]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=19988#p19988</link>
			<description><![CDATA[<p>Бесплатный COM-сервер <a href="http://www.xstandard.com/en/products/#zip">Zip Component</a> предоставляет функциональность архиватора: удобная упаковка/распаковка файла или папки одной строкой кода. Компонент можно скачать <a href="http://www.xstandard.com/en/downloads/?product=zip">здесь</a>, описание и примеры использования можно найти <a href="http://www.xstandard.com/en/documentation/xzip/">здесь</a>. Ссылка на скачивание высылается на e-mail. Размер дистрибутива (архив) — около 70 Кб. Компонент не работает с огромными архивами, размер архива ограничен количеством доступной оперативной памяти.</p><p>Простейший пример упаковки файлов с максимальной степенью сжатия (степень сжатия может принимать значения от 1 до 9):<br /></p><div class="codebox"><pre><code>Set objZip = CreateObject(&quot;XStandard.Zip&quot;)
objZip.Pack &quot;C:\Temp\steam1.jpg&quot;, &quot;C:\Temp\test.zip&quot;,,, 9
objZip.Pack &quot;C:\Temp\steam2.jpg&quot;, &quot;C:\Temp\test.zip&quot;,,, 9</code></pre></div><p>Упаковка с сохранением путей:<br /></p><div class="codebox"><pre><code>Set objZip = CreateObject(&quot;XStandard.Zip&quot;)
objZip.Pack &quot;C:\Temp\steam1.jpg&quot;, &quot;C:\Temp\test.zip&quot;, True
objZip.Pack &quot;C:\Temp\steam2.jpg&quot;, &quot;C:\Temp\test.zip&quot;, True</code></pre></div><p>Упаковка с указанием специальных путей, и с использованием групповых символов:<br /></p><div class="codebox"><pre><code>Set objZip = CreateObject(&quot;XStandard.Zip&quot;)
objZip.Pack &quot;C:\Temp\*.jpg&quot;, &quot;C:\Temp\test.zip&quot;, True, &quot;files/subfolder&quot;</code></pre></div><p>Распаковка файлов с сохранением путей и использованием групповых символов:<br /></p><div class="codebox"><pre><code>Set objZip = CreateObject(&quot;XStandard.Zip&quot;)
objZip.UnPack &quot;C:\Temp\test.zip&quot;, &quot;C:\Temp\&quot;, &quot;*.jpg&quot;</code></pre></div><p>Исследование содержимого архива:<br /></p><div class="codebox"><pre><code>Set objZip = CreateObject(&quot;XStandard.Zip&quot;)
For Each objItem In objZip.Contents(&quot;C:\Temp\test.zip&quot;)
    If objItem.Type = 2 Then
        tp = &quot;(file)&quot;
    Else
        tp = &quot;(folder)&quot;
    End If
    WSCript.Echo objItem.Path &amp; objItem.Name &amp; _
        &quot; &quot; &amp; objItem.Date &amp; &quot; &quot; &amp; objItem.Size &amp; &quot; &quot; &amp; tp
Next</code></pre></div><p>Удаление файла из архива:<br /></p><div class="codebox"><pre><code>Set objZip = CreateObject(&quot;XStandard.Zip&quot;)
objZip.Delete &quot;files/subfolder/steam1.jpg&quot;, &quot;C:\Temp\test.zip&quot;</code></pre></div><p>Перемещение/переименование файла внутри архива:<br /></p><div class="codebox"><pre><code>Set objZip = CreateObject(&quot;XStandard.Zip&quot;)
objZip.Move &quot;files/subfolder/steam2.jpg&quot;, &quot;files/steam1.jpg&quot;, &quot;C:\Temp\test.zip&quot;</code></pre></div><p>Обработка ошибок:<br /></p><div class="codebox"><pre><code>Set objZip = CreateObject(&quot;XStandard.Zip&quot;)
WScript.Echo objZip.Version
objZip.Pack &quot;C:\Temp\some.jpg&quot;, &quot;C:\Temp\test.zip&quot;
WScript.Echo objZip.ErrorCode  &amp; &quot; &quot; &amp; objZip.ErrorDescription</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (The gray Cardinal)]]></author>
			<pubDate>Wed, 25 Feb 2009 10:57:03 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=19988#p19988</guid>
		</item>
	</channel>
</rss>
