0

我想从 Javascript 打开 Outlook,它是用于内部应用程序的,没有任何东西可以访问网络。客户使用的是 IE 和 Firefox,将安装 Outlook,安全性不是问题。

“mailto:” 在这种情况下是不够的,因为要求我需要将文件附加到邮件中,这似乎无法通过使用“mailto:”来完成(发现一些旧的论坛条目,但我尝试过的所有方法都没有奏效,而且似乎mailto URL 方案并未正式支持它)。但是,在 IE 中我可以使用 ActiveX:

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

然后我就可以乱搞了,加个body,加个附件等等,完美。

在 Firefox 中以任何方式都可能发生这样的事情吗?

我已经知道 tiddlywiki 做了一些非凡的事情,因为它可以以某种方式将自己保存在硬盘上。所以我查看了源代码,发现了这个:

netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");

据我了解,其中提供了对浏览器 API/XPConnect/XPCOM 的脚本访问权限。但现在我被困住了。我将如何实际打开 Outlook 对象?这甚至会是一种可行的方法吗?我不知道。也许还有其他想法?任何意见,将不胜感激。


更新:好的,经过一番阅读,我想我可以回答我的一个问题:不,这种方法行不通,因为实现 XPCOM 的 Mozilla API 不支持打开外部程序之类的任何东西。仍然留下一个问题:还有其他想法吗?

4

1 回答 1

0

用这个回答我自己的问题:忽略规范,这是一个坏主意。

它可以通过 Firefox 中的 ActiveX 插件来解决,但实际上,由于安全问题,最好不要这样做,即使它只是一个内部应用程序。需要更改一些浏览器设置才能使类似的东西正常工作,这是有风险的。最后,该规范在此处包含一个非用例:“单击按钮后,打开 Outlook 以通过电子邮件发送附件”。愚蠢的是,除了可以在内部网络中访问文件的其他员工之外,实际上没有任何人可以让员工将文件发送给任何人,因此发送文件要容易得多(并且也可以安全地实施)文件的链接。

于 2011-01-17T13:15:15.267 回答