2013-10-30 55 views
1

我目前的任務是爲應用程序添加有限的電子郵件功能。它只適用於沒有安裝Outlook的Windows PC,但可能具有Outlook Express,Windows Live Mail或類似軟件之一。我不能獲得電子郵件服務器的詳細信息,因爲PC是爲客戶而不是內部的。我也不能使用CDO or extended MAPI,因爲客戶端可能沒有Exchange,並且我也被禁止創建一個Web服務來實現這個功能,因爲這太昂貴了。在沒有電子郵件客戶端的情況下是否有可靠的方法來實現電子郵件功能?

所以很自然地,我使用第三方庫進行了研究,但我發現的最好的一個,Redemption,據我所知,因爲它使用擴展的MAPI並且只與Exchange或Outlook進行通信。

一個簡單的mailto鏈接是不夠的,因爲我必須包含附件。

然後,我開發了一些.NET代碼基於this大多的作品,但也有一對夫婦的,除非安裝了Outlook客戶端,它僅適用於不帶附件的問題,並且從長遠來看managed code is simply not compatible with MAPI。通常,它在我的主要開發計算機上工作正常,但我只能設法使用Outlook Express和Vista與Windows Mail進行測試,並且附件在這兩者中都不起作用。

我一直在investigating further,並發現唯一可靠的解決方案似乎是編寫一個C++或VB6 COM包裝MAPI32.dll中的簡單MAPI函數。我寧願不創建一個VB6,即使這對我來說是最簡單的解決方案,並且一個C++不在我的技能組中,我很懷疑它是否會比我用於所有涉及操作系統和郵件客戶端場景

如何在上述限制下可靠地實現具有附件功能的電子郵件?

+0

當然,你會想要的東西不止提供:'的mailto:[email protected]主題=主題%20Here及身體=身體%20here%0C%0A%0C%0aSecond%20LINE%20of% 20Body' ... – Ben

+0

是的,我需要添加附件,這樣一個mailto鏈接不會破解它不幸 –

+0

試試這個[簡單MAPI的VB6包裝](http://dl.unicontsoft.com/upload/SendMail2.zip) ,根據需要進行破解。 – wqw

回答

相關問題