<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; HTA: Хранение ресурсов в HTA]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=5833</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=5833&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «HTA: Хранение ресурсов в HTA».]]></description>
		<lastBuildDate>Wed, 08 Jun 2011 03:03:17 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=49036#p49036</link>
			<description><![CDATA[<div class="quotebox"><cite>Alexey пишет:</cite><blockquote><p>Пример прикрепил.</p></blockquote></div><p>Спасибо.</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Wed, 08 Jun 2011 03:03:17 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=49036#p49036</guid>
		</item>
		<item>
			<title><![CDATA[Re: HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=49031#p49031</link>
			<description><![CDATA[<div class="quotebox"><cite>Alexey пишет:</cite><blockquote><div class="quotebox"><cite>alexii пишет:</cite><blockquote><p><strong>Alexey</strong>, спасибо. Открепляю.</p><p>А что рабочий пример недоступен? Может, проще его в zip и прямо к посту прикрепить, а?</p></blockquote></div><p>Сейчас из-за ограничивающего корпоративного прокси прикрепить пример к посту не могу. Вечером прикреплю к посту. Пример уже скачивается.</p></blockquote></div><p>Пример прикрепил.</p><div class="quotebox"><cite>JSman пишет:</cite><blockquote><p><strong>Alexey</strong>, а от 8 IE и выше разве указанный хак утратил свою функциональность?:) У меня в 8 все нормально отображается.</p></blockquote></div><p>У меня нет IE 8. Я тестил на IE9 и IE6. В IE9 хак не работает.</p>]]></description>
			<author><![CDATA[null@example.com (Alexey)]]></author>
			<pubDate>Tue, 07 Jun 2011 19:23:23 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=49031#p49031</guid>
		</item>
		<item>
			<title><![CDATA[Re: HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=49004#p49004</link>
			<description><![CDATA[<p><strong>Alexey</strong>, а от 8 IE и выше разве указанный хак утратил свою функциональность?:) У меня в 8 все нормально отображается.</p>]]></description>
			<author><![CDATA[null@example.com (JSmаn)]]></author>
			<pubDate>Tue, 07 Jun 2011 06:56:49 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=49004#p49004</guid>
		</item>
		<item>
			<title><![CDATA[Re: HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48984#p48984</link>
			<description><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><p><strong>Alexey</strong>, спасибо. Открепляю.</p><p>А что рабочий пример недоступен? Может, проще его в zip и прямо к посту прикрепить, а?</p></blockquote></div><p>Сейчас из-за ограничивающего корпоративного прокси прикрепить пример к посту не могу. Вечером прикреплю к посту. Пример уже скачивается.</p>]]></description>
			<author><![CDATA[null@example.com (Alexey)]]></author>
			<pubDate>Mon, 06 Jun 2011 09:53:30 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48984#p48984</guid>
		</item>
		<item>
			<title><![CDATA[Re: HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48983#p48983</link>
			<description><![CDATA[<p><strong>Alexey</strong>, спасибо. Открепляю.</p><p>А что рабочий пример недоступен? Может, проще его в zip и прямо к посту прикрепить, а?</p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Mon, 06 Jun 2011 09:46:56 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48983#p48983</guid>
		</item>
		<item>
			<title><![CDATA[Re: HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48982#p48982</link>
			<description><![CDATA[<div class="quotebox"><cite>alexii пишет:</cite><blockquote><p><span style="color: Green"><strong>Alexey</strong>, пример ещё не в Коллекции? Если нет — поместите его туда, пожалуйста.</span></p></blockquote></div><p><a href="http://forum.script-coding.com/viewtopic.php?pid=48981">Перенес.</a></p>]]></description>
			<author><![CDATA[null@example.com (Alexey)]]></author>
			<pubDate>Mon, 06 Jun 2011 09:34:14 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48982#p48982</guid>
		</item>
		<item>
			<title><![CDATA[Re: HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48974#p48974</link>
			<description><![CDATA[<p><span style="color: Green"><strong>Alexey</strong>, пример ещё не в Коллекции? Если нет — поместите его туда, пожалуйста.</span></p>]]></description>
			<author><![CDATA[null@example.com (alexii)]]></author>
			<pubDate>Sun, 05 Jun 2011 19:38:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48974#p48974</guid>
		</item>
		<item>
			<title><![CDATA[Re: HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48973#p48973</link>
			<description><![CDATA[<div class="quotebox"><cite>JSman пишет:</cite><blockquote><p>В общем, как я понял, если версия IE до 8, то отобрать картинки через протокол mhtml. Если от 8 и выше, то через base64. Верно?</p></blockquote></div><p>Да.Подменяем CSS стили. Если IE&lt;8 интерпретируем HTAфайл как mhtml файл и берем ресурсы из него(mhtml), если IE &gt;=8 то берем ресурсы в BASE64 и подкладываем их в модифицируемый стиль.(DATA Uri).</p>]]></description>
			<author><![CDATA[null@example.com (Alexey)]]></author>
			<pubDate>Sun, 05 Jun 2011 19:37:32 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48973#p48973</guid>
		</item>
		<item>
			<title><![CDATA[Re: HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48971#p48971</link>
			<description><![CDATA[<p>В общем, как я понял, если версия IE до 8, то отобрать картинки через протокол mhtml. Если от 8 и выше, то через base64. Верно?</p>]]></description>
			<author><![CDATA[null@example.com (JSmаn)]]></author>
			<pubDate>Sun, 05 Jun 2011 19:27:51 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48971#p48971</guid>
		</item>
		<item>
			<title><![CDATA[Re: HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48675#p48675</link>
			<description><![CDATA[<p>Интересный вариант <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br />Я решал проблему примитивнее - при запуске проверял есть ли нужный файл в папке с HTA-шкой. Если файла нет, то сохранял его(из переменной где он был в Base64) туда и обновлял страницу.</p>]]></description>
			<author><![CDATA[null@example.com (BeS Yara)]]></author>
			<pubDate>Thu, 26 May 2011 05:02:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48675#p48675</guid>
		</item>
		<item>
			<title><![CDATA[Re: HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48667#p48667</link>
			<description><![CDATA[<p>Вот полностью рабочий <a href="http://prolez.net/test.7z">пример</a></p>]]></description>
			<author><![CDATA[null@example.com (Alexey)]]></author>
			<pubDate>Wed, 25 May 2011 14:28:09 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48667#p48667</guid>
		</item>
		<item>
			<title><![CDATA[HTA: Хранение ресурсов в HTA]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=48664#p48664</link>
			<description><![CDATA[<p>Возникла необходимость хранить картинки в теле HTA документа. Проблем для систем с Internet Explorer &gt;=8 вообще не возникает:<br /></p><div class="codebox"><pre><code>.mystyle{
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAwklEQVRYhe3XXQqDMBhE0dtsIKvNwrOC+mIhTfNrlAzlm0eR4ShomFcI4U2WGGN+6Sfe++49d/S5O8tKWe37AqrhIAEq4uAEquIAnDIOCh/JStkTD9sE7sZB4w0q4KACVMFBAaiEgwyohoMEqIiDE6iKA3DKOBj4Uc+UPfGwQ8Cdx2EXuPusbgJ346ABVMBBBaiCA9sktknmyj6xTXK1zDbJalkrtklGykqxTTJTlsY2yZUysE2yVjYa2yS1sl7+cpMcegPyrqBRcaoAAAAASUVORK5CYIL=);
}</code></pre></div><p>В системах с Internet Explorer 6 и 7 тоже можно с помощью <a href="http://www.phpied.com/mhtml-when-you-need-data-uris-in-ie7-and-under/">mhtml css hack</a>.</p><p>Но хранить одни и те же ресурсы для разных IE как то не комильфо. <br />Для решения этой задачи я сделал следующее:<br />1) завернул ресурсы в тег &lt;!-- &#039;--&gt; в начале HTA файла.</p><div class="codebox"><pre><code>&lt;!--
/*
Content-Type: multipart/related; boundary=&quot;_ANY_STRING_WILL_DO_AS_A_SEPARATOR&quot;

--_ANY_STRING_WILL_DO_AS_A_SEPARATOR
Content-Location:background
Content-Transfer-Encoding:base64

iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAAwklEQVRYhe3XXQqDMBhE0dtsIKvNwrOC+mIhTfNrlAzlm0eR4ShomFcI4U2WGGN+6Sfe++49d/S5O8tKWe37AqrhIAEq4uAEquIAnDIOCh/JStkTD9sE7sZB4w0q4KACVMFBAaiEgwyohoMEqIiDE6iKA3DKOBj4Uc+UPfGwQ8Cdx2EXuPusbgJ346ABVMBBBaiCA9sktknmyj6xTXK1zDbJalkrtklGykqxTTJTlsY2yZUysE2yVjYa2yS1sl7+cpMcegPyrqBRcaoAAAAASUVORK5CYIL=

--_ANY_STRING_WILL_DO_AS_A_SEPARATOR
Content-Location:loading_bar
Content-Transfer-Encoding:base64

R0lGODlh3AATAPQAAP///wAAA.....

--_ANY_STRING_WILL_DO_AS_A_SEPARATOR--
*/
&#039;--&gt;
&lt;html&gt;...</code></pre></div><p>2)Прописал в стиле HTA файла мою будущую картинку такого вот вида идентификатором<br /></p><div class="codebox"><pre><code>&lt;style type=&quot;text/css&quot;&gt;
.hiddenlayer{
    background:#666666 50% 50% repeat url(!BASE64-background!);
}</code></pre></div><p>3)При загрузке HTA файла вызываю функцию, модифицирующую cssText для разных версий Internet Explorer<br /></p><div class="codebox"><pre><code>Function ShowBASE64Images
    Set fso = CreateObject(&quot;Scripting.Filesystemobject&quot;)                
    file_text=fso.OpenTextFile(Replace(document.url,&quot;file://&quot;,&quot;&quot;),1).readall &#039;it&#039;s my own contents
    Set fso = Nothing
    Set RExp = CreateObject(&quot;VBScript.RegExp&quot;)
    RExp.Global=True
    RExp.Pattern=&quot;!BASE64-.*!&quot;
    For i=0 To document.styleSheets.length-1        
        For Each base64record In RExp.Execute(document.styleSheets(i).cssText) &#039;iterate each !BASE64-.*! pattern
            base64id=Replace(Replace(base64record,&quot;!&quot;,&quot;&quot;),&quot;BASE64-&quot;,&quot;&quot;)
            If GetIEVersion&lt;8 Then 
                document.styleSheets(i).cssText=Replace(document.styleSheets(i).cssText,base64record,&quot;mhtml:&quot;&amp;document.URLUnencoded&amp;&quot;!&quot;&amp;base64id)&#039;for ie=6=7 set pattern to mhtml:file...!id
            Else                
                RExp.Pattern=&quot;Content\-Location\:&quot;&amp;base64id&amp;&quot;(.*\n)+?\-&quot; &#039;get only this id section
                For Each base64my_record In RExp.Execute(file_text)
                    RExp.Pattern=&quot;Content\-Location\:&quot;&amp;base64id&amp;&quot;(.*\n)+?\s&quot; &#039;will replace this data
                    result=RExp.Replace(base64my_record,&quot;&quot;) &#039;replace this data
                    result=Left(result,Len(result)-1) &#039;cut last symbols
                    RExp.Pattern=&quot;\n&quot;
                    result=RExp.Replace(result,&quot;&quot;)&#039;clear \r\n
                    result=&quot;data:image/png;base64,&quot;&amp;Trim(result)&amp;&quot;);&quot; &#039;trim all data
                Next                
                document.styleSheets(i).cssText=Replace(document.styleSheets(i).cssText,base64record,result)&#039;set new cssText
            End If
        Next    
    Next
    Set RExp = Nothing
End function

function GetIEVersion
    Set WshShell = CreateObject(&quot;Wscript.Shell&quot;)
    GetIEVersion=Left(WshShell.RegRead(&quot;HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Version&quot;),1)
End Function</code></pre></div><p>В результате чего ресурсы хранятся в файле один раз и отображаются во всех версиях IE.</p>]]></description>
			<author><![CDATA[null@example.com (Alexey)]]></author>
			<pubDate>Wed, 25 May 2011 14:04:11 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=48664#p48664</guid>
		</item>
	</channel>
</rss>
