opening Outlook through javascript

白昼怎懂夜的黑 提交于 2019-11-26 11:39:25

问题


Does anyone know how to open Outlook using Javascript?

I am getting an exception (in IE6) while using this code:

var outlookApp = new ActiveXObject(\"Outlook.Application\");

回答1:


You can definitely do this, the code looks like:

var objO = new ActiveXObject('Outlook.Application');     
var objNS = objO.GetNameSpace('MAPI');     
var mItm = objO.CreateItem(0);     
mItm.Display();     
mItm.To = p_recipient;
mItm.Subject = p_subject;
mItm.Body = p_body;     
mItm.GetInspector.WindowState = 2;

p_recipient, p_subject & p_body being variables, passed in.

You need to ensure this is running on a webpage which users trust, as this will cause exceptions otherwise.
That is it needs to be in the right zone in IE, with the right settings configured for that zone.




回答2:


You cannot open desktop applications through JavaScript for very obvious security reasons. The example you gave uses ActiveX which is a proprietary Microsoft technology only available in Internet Explorer.

If you simply want to open a message composition in a users email client with fields pre-filled, you can use the mailto: hyperlink prefix. This allows you to specify recipients, subject and body. Example:

<a href="mailto:me@domain.com?subject=You can specify subject too">

Unless you have a requirement to specifically use Outlook (and I'd suggest you may want to revisit your requirements if that's the case), it is far more desirable to open whatever the default email client the user has set.




回答3:


I seem to recall that Outlook registers its own URI scheme (!), so you can actually open it very simply and easily from a hyperlink of the form outlook:, if that's really what you want to do. Unfortunately I don't own a copy of Outlook anymore, and it's been years since I've tried this, so I'm unable to verify that it still works.

Edited to add: Well! The link shows up as a link in the preview, but not in the actual posted answer. In any case, here is some HTML code to clarify my meaning:

<a href="outlook:">Click here to launch Microsoft Outlook</a>


来源:https://stackoverflow.com/questions/776672/opening-outlook-through-javascript

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!