正直なところ、最初はプログラミングの問題だとは思わなかったという問題がありますが、他のすべての領域を確認した後、これが1つである可能性がある場合は、フィードバックをいただければ幸いです。
添付ファイル付きの電子メールをユーザーに送信するASP.NETWebアプリケーションがあります。送信されると、メッセージはSharePointに.msgファイルとして保存されます。これらはすべて正しく確実に機能します。
私たちが見つけた問題は、ユーザーが.msgファイルを開いて(つまり、SharePointからダウンロードして)転送すると、添付ファイルが電子メールから削除されることです。添付ファイルは.msgファイルにあり、開いて表示することができます。問題は、添付ファイルを転送した場合にのみ発生します(ドキュメントを転送するとドキュメントが消えます)。
ユーザーはOutlook(さまざまなバージョン)とInternetExplorerを使用しています。
プログラミング以外の説明を排除するために、次のことを試みました。
- 送信された実際の電子メールを転送します-これは機能します(つまり、添付ファイルは保持されます)
- msgファイルからコンテンツと添付ファイルを取得し、送信してから転送します-これは機能します
- このメールを受け取り、SharePointにアップロードし、ダウンロードして転送します-これは機能します
- 生成された.msgファイルを取得し、ローカルに保存します。開いて転送-これは機能しません
- SharePointから生成された.msgファイルを開きます-これは機能しません
- 適切な信頼/イントラネット設定をすべて変更します-違いはありません
- 生成された.msgを転送します-受信したときにファイルがまだ欠落しています
電子メールは標準のSmtpClient機能を使用して送信されますが、これは私が対処する必要のある領域ではないと思います*。Independentsoftと呼ばれるサードパーティコンポーネントを使用して.msgファイルを生成しています。これは、支援が必要な領域である可能性が高いと思います。
このための抽出はかなり単純です:
メッセージmailMsg=new Message(); //設定、メールアドレスの設定など... foreach(msg.Documentsのドキュメントドキュメント) {{ 添付ファイル添付ファイル=新しい添付ファイル(doc.Path); mailMsg.Attachments.Add(attachment); }
これを引き起こしている可能性のあるものについての考えは大歓迎です