ActiveX – Automatiseringsserver kan geen object maken

Ik heb een webpagina waar ik een e-mail naar moet sturen. Ik moet een GROTE e-mail verzenden vanuit de browser. Omdat de inhoud groter is dan de queryreeks toestaat, moet ik vertrouwen op Active X. Ik wil deze e-mail via Outlook verzenden. In een poging om dit te doen, heb ik de volgende code geschreven:

try {
  var to = "";
  var cc = "";
  var subject = "Action Required";
  var body = GenerateEmailBody();
  var outlook = new ActiveXObject('Outlook.Application');
  var outlookNamespace = outlook.GetNameSpace('MAPI');
  var message = outlookNamespace.CreateItem(0);
  message.Display();
  message.To = to;
  message.Subject = subject;
  message.Body = body;
  message.GetInspector.WindowState = 2;
} catch (err) {
  alert("Unable to send email. " + err);
}

Als ik deze code uitvoer, krijg ik de volgende foutmelding:

ReferenceError: ActiveXObject is not defined 

Wat doe ik verkeerd?

Bedankt!


Antwoord 1, autoriteit 100%

De fout “Automation Server Can’t Create Object” betekent dat de beveiligingsinstellingen van uw browser te laag zijn om het ActiveX-besturingselement uit te voeren. U moet uw pagina naar de lijst met vertrouwde sites verplaatsen en de ActiveX-instellingen verlagen zodat deze kan worden uitgevoerd.

Persoonlijk zou ik ActiveX mijden als de pest, omdat het je opsluit in de IE-only wereld. Vandaar dat we nog steeds mensen hebben die vastzitten aan IE6.

Als u gewoon een e-mailbericht probeert te laden, kunt u mailto:


Antwoord 2, autoriteit 56%

a) Ga naar Extra–>Internetopties

b) Selecteer het tabblad Beveiliging

c) Klik op Vertrouwde sites (of Lokaal intranet, afhankelijk van of uw site vertrouwd is of niet)

d) Klik op Aangepast niveau

e) Zorg ervoor dat “Initialiseren en scripten van actieve x-besturingselementen is niet gemarkeerd als veilig voor scripting” is ingeschakeld – dit valt onder de sectie Activex-besturingselementen en plug-ins richting 1/4e van de schuifbalk.

Klik op OK, OK.

Zodra dit is voltooid, verwijdert u de browsercookies en het cachegeheugen. Sluit al uw browsersessies. Open de IE opnieuw om uw site te starten.

Probeer de instelling in stap (e) uit te schakelen om te zien of het probleem terugkomt – dat zou meer inzicht in het probleem moeten geven.

Bron: IE9, Automation-server kan maak geen objectfout tijdens het gebruik van CertEnroll.dll


Antwoord 3, autoriteit 12%

U zou ‘Outlook.Application’ niet vanuit de browser moeten kunnen maken. Dit kan verschillende redenen hebben:

  • Het is niet gemarkeerd als veilig voor initialisatie of veilig voor scripting
  • Het heeft de kill-bit ingesteld

Kun je een POST gebruiken om je e-mail naar de server te sturen?


Antwoord 4, autoriteit 6%

Het ActiveXObject-object is alleen beschikbaar in Internet Explorer en mogelijk onderhevig aan beperkingen, afhankelijk van de zone waarin uw pagina zich bevindt (lokaal, intranet of internet).

Wilt u een e-mail verzenden vanaf een webpagina die op internet wordt gehost? Dan is de enige optie die je hebt, behalve een mailto-link, het versturen van de e-mail vanaf de server. Hoe u dat doet, hangt volledig af van uw server-side technologie.


Antwoord 5

maak inschakelen, menu Extra -> Internetopties -> Beveiliging -> Aangepast niveau -> “Initialiseer en script ActiveX op IE

Other episodes