New ActiveXObject('Word.Anwendung") schafft neue winword.exe Prozess, wenn der IE Sicherheit nicht erlaubt Objekt erstellt werden

Wir verwenden MS Word wie eine Rechtschreibprüfung für ein paar Felder auf einer privaten Website, und wenn IE-Sicherheitseinstellungen korrekt sind, funktioniert es gut. (Zone für die Webseite zu den Vertrauenswürdigen und vertrauenswürdigen zone geändert, damit die Kontrolle ausführen, ohne nachzufragen.)

Das Skript, das wir verwenden erstellt eine word-Objekt und schließt es danach. Während das Objekt existiert, ist ein winword.exe Prozess läuft, aber es wird zerstört, wenn das Word-Objekt geschlossen ist.

Wenn unsere Website ist nicht in der vertrauenswürdigen zone (zone Internet mit Standard-Sicherheitsstufe) der Aufruf erzeugt das Word-Objekt nicht wie erwartet, aber die winword.exe Prozess ist noch nicht erstellt. Ich habe keine Möglichkeit zur Interaktion mit diesem Prozess in das Skript, so dass der Prozess bleibt etwa bis der Benutzer sich abmeldet (Benutzer haben keine Möglichkeit manuell zu zerstören, den Prozess, und es wäre keine gute Lösung, auch wenn Sie es täten.)

Den Anruf, dass die versuche, das Objekt zu erstellen ist...

try {
      wordApplication = new ActiveXObject('Word.Application');
} catch(error) {
      //irrelevant code removed, described in comments..
      //notify user spell check cannot be used
      //disable spell check option
}

Also jedes mal, wenn die Seite geladen wird dieser code kann erneut ausgeführt werden, erstellen ein weiteres Waisenkind winword.exe Prozess.

wordApplication ist natürlich undefiniert in den catch-block.

Ich würde gerne in der Lage sein, zu erkennen, die browser-Sicherheits-Einstellungen vorher, aber ich habe getan, einige suchen auf dieser und nicht zu denken, dass es möglich ist.

Management hier ist zufrieden damit, wie es ist. Solange IE Sicherheit ist dann richtig eingestellt, es funktioniert, und es funktioniert gut für unsere Zwecke. (Wir können Sie schließlich den Blick auf andere Optionen für die Rechtschreibprüfung Funktionalität, aber dies war schnell, preiswert, und tut alles, was wir brauchen, es zu tun.)

Diesem letzten problem nervt mich und ich möchte etwas dagegen tun, aber ich bin aus Ideen heraus und ich habe andere Dinge, die mehr brauchen meine Aufmerksamkeit.

Bevor ich es beiseite gelegt, ich dachte, ich würde Fragen, Anregungen hier.

InformationsquelleAutor Mark Ott | 2010-03-11
Schreibe einen Kommentar