2008-09-04 172 views
2

我有一个在我公司的Intranet上运行的ASP.net和C#开发的Web应用程序。因为这个应用程序的所有用户都毫无例外地使用Microsoft Outlook,我希望应用程序在客户端打开Outlook消息。 我知道Office被设计为可以在桌面上运行,而不是从服务器运行,但是我在客户端创建Word或Excel文档时没有问题。通过网页的Outlook电子邮件

我有使用Microsoft.Office.Interop.Outlook命名空间和Outlook安装在服务器上的实例化Outlook对象的代码。当我尝试从服务器运行代码时,出现一条DCOM源错误消息,其中指出“机器默认权限设置不授予CLSID {COM10C-0000-0000-C000-000000000046 }给用户使用组件服务管理工具可以修改此安全权限。“我已经使用组件服务工具修改了权限,但仍然出现相同的错误。

有没有办法解决这个问题,或者这是一个没有成果的练习,因为Outlook无法从服务器端代码在客户端打开?

由于电子邮件可以获得的极端长度,Mailto将不起作用。另外,发送它的用户需要为收件人的文本添加媚眼。

回答

6

您无法从服务器端代码打开客户端上的某些内容。你必须在页面上使用脚本来做你想做的事(或者像ActiveX或嵌入式.NET之类的其他客户端)

这是一个示例Javascript,它从网页调用Outlook MailItem。这可以很容易地从服务器端代码注入到页面中,以便在客户端执行。

http://www.codeproject.com/KB/aspnet/EmailUsingJavascript.aspx

2

(提示:你的问题格式化)

我不明白这有什么错一个mailto链接或FormMail程式类型页。

+0

不开玩笑格式化!对于那个很抱歉。 – Keng 2008-09-12 13:13:00

1

如果公司中的每个人都使用Outlook,那么只需使用标准的“mailto”链接就可以打开Outlook。这听起来像你在过度设计这个。

1

是否要打开现有的电子邮件或创建新的电子邮件?

也许我误解你的问题,但可以提供像

的mailto链接:[email protected]主题=此%图20是第二十条%%20subject &体=你好%20there!

当用户点击该链接时,将打开一个新的Outlook-E-Mail,收件人是收件人@ email-tld,主题是“This is the subject”,主体是“你好! ”。所有这些字段已经从链接填充。

1

我只是抛出这个问题,因为它已被问及。

Mailto有很多缺点;主要是尺寸。由于发件人需要对电子邮件文本进行大量格式化,因此生成的html代码在使用mailto时可能会占用大量空间。

谢谢你的建议。

+0

你能澄清一下吗(可能在问题本身)? 我不清楚为什么一个mailto:链接应该占用更多的“空间”而不是其他任何东西。邮件正文是否完全自动生成? – 2008-09-19 07:55:51