<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; Реестр: Перетаскивание файлов и папок на значок HTA-приложения]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=1095</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=1095&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Реестр: Перетаскивание файлов и папок на значок HTA-приложения».]]></description>
		<lastBuildDate>Tue, 29 Jan 2008 05:51:56 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Реестр: Перетаскивание файлов и папок на значок HTA-приложения]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=8462#p8462</link>
			<description><![CDATA[<p>HTA позволяют при вызове указывать аргументы, однако передать в качестве аргумента пути к файлам и папкам перетащив их в Проводнике на значок приложения нельзя.<br />Чтобы исправить это упущение, можно использовать соответствующее расширение оболочки для сценариев WSH:<br /></p><div class="codebox"><pre><code>REGEDIT4

[HKEY_CLASSES_ROOT\htafile\shellex\DropHandler]
@=&quot;{60254CA5-953B-11CF-8C96-00AA00B8708C}&quot;</code></pre></div><p>Можно также использовать расширение оболочки для .exe, .com, .bat, ... файлов:<br /></p><div class="codebox"><pre><code>REGEDIT4

[HKEY_CLASSES_ROOT\htafile\shellex\DropHandler]
@=&quot;{86C86720-42A0-1069-A2E8-08002B30309D}&quot;</code></pre></div><p>но в этом случае пути передаются в коротком (8.3) формате. Предполагаю, что это происходит потому, что hta-файл не имеет расширения &quot;.bat&quot; или &quot;.cmd&quot; и не является 32-разрядным Windows-приложением.</p><p>Если нет желания вносить изменения в реестр, то для решения задачи для отдельно взятого hta-приложения можно создать ярлык на mshta.exe указав в качестве аргумента <span class="bbu">полный</span> путь к hta-файлу (в кавычках, если он содержит пробелы) и выполнять перетаскивание на этот ярлык. Кстати, в этом случае можно использовать расширение отличное от &quot;.hta&quot;.</p><p>Простой пример для тестирования:<br /></p><div class="codebox"><pre><code>&lt;HTML&gt;
&lt;HEAD&gt;
&lt;META http-equiv=&#039;Content-Type&#039; content=&#039;text/html; charset=windows-1251&#039;&gt;
&lt;HTA:APPLICATION id=&#039;App&#039;/&gt;
&lt;/HEAD&gt;

&lt;BODY&gt;
&lt;PRE&gt;
Командная строка:
&lt;STRONG&gt;&lt;SCRIPT language=&#039;JavaScript&#039;&gt;
document.write(App.commandLine);
&lt;/SCRIPT&gt;&lt;/STRONG&gt;

Рабочая папка:
&lt;STRONG&gt;&lt;SCRIPT language=&#039;JavaScript&#039;&gt;
document.write(
  (new ActiveXObject(&quot;WScript.Shell&quot;)).CurrentDirectory
);
&lt;/SCRIPT&gt;&lt;/STRONG&gt;&lt;/PRE&gt;
&lt;/BODY&gt;&lt;/HTML&gt;</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (wisgest)]]></author>
			<pubDate>Tue, 29 Jan 2008 05:51:56 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=8462#p8462</guid>
		</item>
	</channel>
</rss>
