이전에는 MAPISendMail을 사용하여 첨부 파일이있는 C++ 응용 프로그램에서 Outlook (또는 원하는 MAPI 전자 메일 응용 프로그램이 무엇이든)을 시작했습니다. (Microsoft Word의 Send Email 기능과 비슷합니다).C#에서 전자 메일 응용 프로그램 (MAPI) 시작 (첨부 파일 포함)
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를 사용하지 않음) 작동 아무것도 드리겠습니다. 나는 현재의 "해결책"이 무엇인지 찾아 낼 수 없다. Stack Overflow에 대한 기존 답변 중 어느 것도이 문제를 다루지 않습니다.
편집 :
내가 알고 MAPI 오전 및 C# 함께 작동하지 않는, 그래서 관리자 권한으로 실행하는 C/C++ Vista에서 작동하는 솔루션 및 서버 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