<?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=8803</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=8803&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «HTA: Копирование файлов по директориям».]]></description>
		<lastBuildDate>Tue, 22 Oct 2013 19:44:35 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[HTA: Копирование файлов по директориям]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=76352#p76352</link>
			<description><![CDATA[<p>Задача следующая, необходимо создать HTA приложение при помощи которого можно было:<br />1) Выбрать несколько файлов или указать папку с файлами<br />2) Все данные файлы отобразились бы на форме HTA с левой стороны.<br />3) А с правой бы стороны были бы условные названия (которые брались из файла), а под этими названиями скрывался бы путь копирования.<br />4) Кнопочка копирования.</p><p>И получается слева выбираем несколько файлов, а справа указываем количество мест куда их нужно скопировать.</p><p>Для выбора нескольких файлов можно использовать Set Files = FSO.GetFolder(FolderPath).Files</p><p>Для выбора необходимых файлов можно использовать CheckBox</p><p>Вот начал писать форму. На этой форме есть кнопка при нажатии на которой запускается окно и в этом окне нужно что б можно было выбрать необходимые файлы:</p><p>Файл называется Start.hta</p><div class="codebox"><pre><code>&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Start&lt;/title&gt;
&lt;HTA:APPLICATION
  APPLICATIONNAME=&quot;Start&quot;
  ID=&quot;Start&quot;
  VERSION=&quot;1.0&quot;/&gt;
&lt;/head&gt;

&lt;script language=&quot;VBScript&quot;&gt;

Sub Window_OnLoad
End Sub

Function Fill_Dict_CheckBox()
    dim objDic
    Set objDic = CreateObject(&quot;Scripting.Dictionary&quot;)
    objDic.Add &quot;Header&quot;, &quot;Отправка файлов&quot;
    objDic.Add &quot;ControlHeader&quot;, &quot;Выберите файлы для копирования&quot;
    objDic.Add &quot;Description&quot;, &quot;Подробное описание, того что требуется от пользователя в этом окне&quot;
    objDic.Add &quot;ControlValues&quot;, Array(&quot;1й Файл&quot;, &quot;2й Файл&quot;, &quot;3й Файл&quot;, &quot;4й Файл&quot;)
    objDic.Add &quot;BtnFinish&quot;, True
    Set Fill_Dict_CheckBox = objDic
    Set objDic = Nothing
End Function

Sub OnClickButtonbtnChB
    varReturn = window.ShowModalDialog(&quot;checkbox.hta&quot;, Fill_Dict_CheckBox, &quot;dialogHeight:400px;dialogWidth:400px&quot;) 
    MsgBox varReturn
End Sub

&lt;/script&gt;

&lt;body&gt;

&lt;input type=&quot;button&quot; name=&quot;btnRB&quot; id=&quot;btnChB&quot; value=&quot;Отправка файлов&quot; onclick=&quot;OnClickButtonbtnChB&quot;&gt;

&lt;/body&gt;
&lt;/html&gt;</code></pre></div><p>Второй запускаемый файл CheckBox.hta</p><div class="codebox"><pre><code>&lt;html&gt;
&lt;head&gt;
&lt;title&gt;911&lt;/title&gt;
&lt;HTA:APPLICATION
  APPLICATIONNAME=&quot;CHECKBOX&quot;
  ID=&quot;CHB&quot;
  VERSION=&quot;1.0&quot;
  SYSMENU=&quot;no&quot;
  MAXIMIZEBUTTON=&quot;no&quot;
  MINIMIZEBUTTON=&quot;no&quot;
  SCROLL=&quot;no&quot;
  CONTEXTMENU=&quot;no&quot;
  SELECTION=&quot;no&quot;/&gt;
&lt;/head&gt;

&lt;script language=&quot;VBScript&quot;&gt;

  Dim objDict
    Set objDict = window.dialogArguments

Sub Window_OnLoad
    Header.InnerHTML = &quot;&lt;B&gt;&quot; &amp; objDict.Item(&quot;Header&quot;) &amp; &quot;&lt;/B&gt;&quot;
    ControlHeader.InnerHTML =  &quot;&lt;BR&gt;&quot; &amp; objDict.Item(&quot;ControlHeader&quot;)
    Description.InnerHTML = &quot;&lt;BR&gt; &lt;font size=2&gt;&quot; &amp; objDict.Item(&quot;Description&quot;) &amp; &quot;&lt;/font&gt;&quot;
    
    
    If objDict.Item(&quot;BtnFinish&quot;) Then 
        ButtonFinish.InnerHTML = &quot;&lt;input type=&quot;&quot;button&quot;&quot; name=&quot;&quot;btnFinish&quot;&quot; id=&quot;&quot;btnFinish&quot;&quot; value=&quot;&quot;Отправить&quot;&quot; onclick=&quot;&quot;OnClickButtonbtnFinish&quot;&quot;&gt;&quot;
    Else 
        ButtonFinish.InnerHTML = &quot;&quot;
    End If    
    
    strHTML = &quot;&lt;BR&gt;&quot;
    For i = 0 To UBound(objDict.Item(&quot;ControlValues&quot;))
        strHTML = strHTML &amp; &quot;&lt;input type=&quot;&quot;checkbox&quot;&quot; name=&quot;&quot;checkbox&quot; &amp; CStr(i) &amp;&quot;&quot;&quot; id=&quot;&quot;checkbox&quot; &amp; CStr(i) &amp; &quot;&quot;&quot;&gt;&quot; &amp; objDict.Item(&quot;ControlValues&quot;)(i) &amp; &quot;&lt;BR&gt;&quot; &amp; vbCr
    Next
    ControlValues.InnerHTML = strHTML
    
    window.returnValue = &quot;Value=;Button=;&quot;
End Sub

Function GetCheckBoxValues()
    GetCheckBoxValues = &quot;&quot;
    For i = 0 To UBound(objDict.Item(&quot;ControlValues&quot;))
        If window.document.getElementById(&quot;checkbox&quot; &amp; CStr(i)).Checked Then 
            GetCheckBoxValues = GetCheckBoxValues &amp; &quot;1,&quot;
        Else
            GetCheckBoxValues = GetCheckBoxValues &amp; &quot;0,&quot;
        End If    
    Next
    GetCheckBoxValues = Left(GetCheckBoxValues,Len(GetCheckBoxValues)-1)
End Function



Sub OnClickButtonbtnFinish()
    window.returnValue = &quot;Value=&quot; &amp; GetCheckBoxValues() &amp; &quot;;Button=Отправлено;&quot;
    window.close
End Sub

&lt;/script&gt;

&lt;body&gt;

&lt;span id=Header&gt;&lt;/span&gt;
&lt;span id=ControlHeader&gt;&lt;/span&gt; &amp;nbsp; 
&lt;span id=ControlValues&gt;&lt;/span&gt;
&lt;span id=Description&gt;&lt;/span&gt;
&lt;BR&gt;

&lt;span id=ButtonFinish&gt;&lt;/span&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre></div><br /><p>В HTA не силен только начинаю осваивать буду признателен за любую помощь. Читал про многие функции которые есть d JScript или VBScript, но как подружить все это с hta-формой пока не до конца понимаю.</p><p>На самом деле потом буду еще многое допиливать, но это сейчас основное.</p>]]></description>
			<author><![CDATA[null@example.com (wildwolf007)]]></author>
			<pubDate>Tue, 22 Oct 2013 19:44:35 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=76352#p76352</guid>
		</item>
	</channel>
</rss>
