lokal funktioniert mein script aber nicht via server???
LarryL
- javascript
hallo!
ich hab hier ein kleines testscript geschrieben. wenn ich dieses lokal auf meiner platte öffne funktioniert alles ohne probleme. wenn ich es jedoch auf unseren intranet-webserver zum testen kopiere und von dort aus starte, bekomme ich folgende fehlermeldung: "Automatisierungsserver kann Objekt nicht erstellen"
hier mal der code zum angucken:
function runIE(Pfad)
{
var Application = new ActiveXObject("WScript.Shell");
Application.Run(Pfad, 1, true);
}
woran kann das denn bitte liegen? ich hoffe von euch hat jemand eine brauchbare idee.
LarryL
Hallo,
[...] bekomme ich folgende fehlermeldung: "Automatisierungsserver kann Objekt nicht erstellen"
function runIE(Pfad)
{
var Application = new ActiveXObject("WScript.Shell");
Application.Run(Pfad, 1, true);
}
dir ist anscheinend nicht bewusst, dass der IE für die verschiedenen Zonen (eigener Rechner, lokales Intranet, Internet, vertrauenswürdige Sites) unterschiedliche Sicherheitseinstellungen hat?
Mit Javascript an sich hat dein Problem nämlich nichts zu tun, der Knackpunkt ist das ActiveX-Objekt, das du erzeugen willst. Das Verhalten, das du beschreibst (und auch die Fehlermeldung dazu) entsteht dann, wenn ActiveX-Controls zwar lokal erlaubt sind, im Internet jedoch nicht. Und das ist AFAIK seit IE6 die Standardeinstellung (und, wie ich finde, eine sehr vernünftige). Die Benutzung eines ActiveX-Objekts wird dir hier also aus Sicherheitsgründen untersagt.
Abhilfe:
Füge euren Webserver, auf dem die Seite liegt, zu den "vertrauenswürdigen Sites" hinzu. Bei denen ist ActiveX, soweit ich mich erinnere, zugelassen.
Ach so, bevor ich es vergesse: Kannst du wirklich sichergehen, dass alle User auch den IE verwenden, und dass sie alle die gleichen Sicherheitseinstellungen haben? Sonst ist dein Konzept nämlich zum Scheitern verurteilt.
Schönen Tag noch,
Martin