2008-09-04 173 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