У меня есть Приложение Windows (.EXE, файл записан в C и создан с Visual Studio MS), что выходной текст ASCII к stdout. Я надеюсь улучшать текст ASCII для включения ограниченного HTML с несколькими ссылками. Я хотел бы вызвать это приложение (.EXE Файл) и взять вывод того приложения и передать его по каналу в Браузер. Это не одна вещь времени, каждая новая веб-страница была бы другим выполнением Локального приложения!
Приложение HTML/java-script ниже работало на меня для выполнения приложения, но вывод вошел в DOS Box окна а не передавать его по каналу в Браузер. Я хотел бы обновить это Приложение HTML, чтобы позволить Браузеру получить тот текст (который улучшен с HTML), и отобразите его с браузером.
<body>
<script>
function go() {
w = new ActiveXObject("WScript.Shell");
w.run('C:/DL/Browser/mk_html.exe');
return true;
}
</script>
<form>
Run My Application (Window with explorer only)
<input type="button" value="Go"
onClick="return go()">
</FORM>
</body>
Да, это работает. Это происходит в пяти футах от меня прямо сейчас в другой камере.
Было бы проще, если бы ваш EXE создал временный файл, содержащий HTML, а затем просто сказал Windows открыть временный HTML-файл в браузере.
Вы уже используете WScript для запуска, он также может читать StdOut .
<html>
<head>
<script type="text/javascript">
function foo() {
var WshShell = new ActiveXObject("WScript.Shell");
var oExec = WshShell.Exec("ipconfig.exe");
var input = "";
while (!oExec.StdOut.AtEndOfStream) {
input += oExec.StdOut.ReadLine() + "<br />";
}
if (input)
document.getElementById("plop").innerHTML = input;
}
</script>
</head>
<body onload="foo();">
<code id="plop"></code>
</body>
</html>