これまでは、添付ファイル付きのC++アプリケーションからMAPISendMailを使用してOutlook(または必要なMAPI電子メールアプリケーション)を起動しました。 (Microsoft WordのSend Email機能と同様)。C#からメールアプリケーションを起動する(添付ファイル付き)
私はC#アプリケーションから同等の機能を実行し、XP、Vista、Server 2008(およびWindows 7)で動作させる必要があります。
MAPISendMailは、Outlookが稼働しMAPIがマネージコードでサポートされていない場合、常にMAPI_ E_FAILUREを返すため、Vista/2008の下位にはありません。 この修正を確認した後でさえ、 http://support.microsoft.com/kb/939718 私はそれを確実に動作させることはできません。
私はMicrosoft Word &を知っています.Adobe Reader 9は、Vista上で添付ファイルとともにOutlookを起動できます。
C#互換のソリューションが望ましいですが、私は動作するもの(MAPIを使用する必要はありません)に満足しています。私は現在の "解決策"が何であるかを見出すことができない。スタックオーバーフローに関する既存の回答のどれもこれをカバーしていないようです。
編集:
私は認識してMAPIだとC#が一緒に動作しませんので、私は管理者として実行しているC/C++ Vistaで機能するソリューションおよびServer 2008のませがかかります。動作する例として、Adobe Reader 9 & Microsoft Wordを参照してください。指摘したように、それはmailto URL specの一部ではないとして、これは、すべてのクライアント上で動作しない場合があります
私はあなたに良いニュースがありません。この投稿は、.netでMAPIまたはCDOを使用しないでください:http://blogs.msdn.com/mstehle/archive/2007/10/03/fyi-why-are-mapi-and- cdo-1-21-not-supported-in-managed-net-code.aspx – JMarsch
@JMarsch、それ以前に読んでください。私がこの質問で触れたように、私は非.NET答えがうまくいけば満足しています。 VistaやServer 2008の下では、MAPISendMailがAT ALLの仕事をすることはできません。 – Steven
実際に添付ファイル付きのメールを送信したいのですか?あるいは、エンドユーザーは実際にこれをOutlookで開いておく必要がありますか? – PeteT