Довольно уверен, что вам не нужно использовать пакетный файл для всего этого.
Что-то, как это должно работать:
Set Shell = CreateObject("WScript.Shell")
Shell.run "h:\tools\ffmpeg\bin\ffmpeg.exe -i " & Input & " " & Output
Примечание - Я просто угадывая имена переменных (входных и выходных) вы используете в ОМТ, так что вам придется переименовать те, к каким-либо переменным которые содержат исходные данные, которые вы хотели передать в пакетный файл. Кроме того, лишь догадываясь, что это будет в VBScript ...
EDIT: Чтобы ответить на комментарий более полно, что-то вроде этого:
<html>
<head>
<title>HTA Test</title>
<HTA:APPLICATION
ID="objTest"
APPLICATIONNAME="HTATest"
SCROLL="yes"
SINGLEINSTANCE="yes"
>
</head>
<SCRIPT LANGUAGE="VBScript">
Sub TestSub
Set Shell = CreateObject("WScript.Shell")
Shell.run "h:\tools\ffmpeg\bin\ffmpeg.exe -i "& InputTextbox.Value & " " & OutputTextbox.Value
End Sub
</SCRIPT>
<body>
Input : <input type="text" name="InputTextbox" size="30"><P>
Output: <input type="text" name="OutputTextbox" size="30"><P>
<input id=runbutton type="button" value="Run Script" name="run_button" onClick="TestSub">
</body>
Примечание для людей, на самом деле пытается передать аргументы в пакетный файл от HTA:
Предполагая, что вы уже сделали ввод от пользователя, вы можете передать его в пакетный файл (точно так же, как параметры передаются в EXE выше), но вам не нужны строки set /p
. Вместо этого вы будете ссылаться на ввод и вывод как %1
и %2
в пакетном файле.
http://www.dostips.com/forum/viewtopic.php?t=6581 – Squashman
«чувствует себя», вы имеете в виду «заполняет»? –