Wie Sie ausgeführt werden .hta-Datei aus .html-Datei w/o bittet, um es herunterzuladen
Möchte ich laufen .hta-Datei aus .html-Datei w/o den browser zu Fragen, um es herunterzuladen.Es sollte in einem iframe in die html-Seite im browser. Der code, den ich verwende, ist dies-
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<iframe src="app.hta">
</body>
</html>
Das problem ist, dass der browser fordert zum download des hta-Datei, aber es will, dass es sollte automatisch ausgeführt werden.
Die hta-Datei code ist-
<html>
<head>
<title>Application Executer</title>
<HTA:APPLICATION ID="oMyApp"
APPLICATIONNAME="Application Executer"
BORDER="no"
CAPTION="no"
SHOWINTASKBAR="yes"
SINGLEINSTANCE="yes"
SYSMENU="yes"
SCROLL="no"
WINDOWSTATE="normal">
<script type="text/javascript" language="javascript">
function RunFile() {
WshShell = new ActiveXObject("WScript.Shell");
WshShell.Run("c:/app.exe", 1, false);
}
</script>
</head>
<body>
<input type="button" value="Run Notepad" onclick="RunFile();"/>
</body>
</html>
- Ist dein server so konfiguriert werden, richtig bieten den richtigen MIME-Typ für ein
.hta
- Datei?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Eigentlich Sie Sie nicht öffnen können eine HTA innerhalb
iframe
auch wenn die Haupt-app wurde ein HTA. HTAs haben eine eigene OS windows, genau wie ein browser oder jeder .exe hat.Was Sie tun können, ist, um Ihr Skript, um eine normale html-Datei. Je nach den Sicherheitseinstellungen des IE ist, führt er den code, oder den Benutzer Fragen, um zu ermöglichen, führen Sie aus, oder wirft einen Fehler aus.
Beachten Sie auch, dass
ActiveX
s funktionieren nur in Internet Explorer. Und wie Dark Falcon gesagt hat, so dassActiveX
Ausführung von web wäre ein großes Sicherheitsrisiko. Also versuchen, das zu tun diese Art von Dingen, die auf einer öffentlichen website wird nicht empfohlen.Ist dies eine intranet-app können Sie ändern Sie die main-app zu HTA. Dann können Sie
Run Notepad
- Taste (und das Skript), um die Haupt-app, oder eineiframe
, dieapplication=yes
gesetzt. Auch Vertrauenswürdige Webseiten (html) ausgeführt werden könnenActiveX
s ohne Aufforderung oder Fehler.HTAs nicht ausgeführt werden kann, unter der browser. Sie laufen unter einer speziellen host-Prozess, der als
mshta
. Ermöglicht das öffnen eines HTA in einem browser-Rahmen wäre zu Fragen, für Probleme, wie HTAs haben eine viel höhere Privilegien als normale Webseiten.