0

私はICSharpCode.SharpZipLib.Zipライブラリを使用して Zip ファイルを作成しましたが、正常に動作していますが、この Zip ファイルをメールの添付ファイルに添付すると、zip ファイルが添付されているためにメールが送信されません。

zipファイルをメールに添付するためのコードは次のとおりです

System.Net.Mail.Attachment attachment = null;
                try
                {
                    MemoryStream memoryStream = new MemoryStream();
                    attachment = new System.Net.Mail.Attachment(memoryStream, "test.zip");
                }
                catch (Exception e)
                {
                    return false;
                } 

メールで zip ファイルを送信する方法を教えてください。

4

2 に答える 2

1

あなたのコード

MemoryStream memoryStream = new MemoryStream();
attachment = new System.Net.Mail.Attachment(memoryStream, "test.zip");

Stream を渡しますが、その Stream は空です ( には何もありませんmemoryStream)。

MemoryStream を使用する場合は、ZIP ファイルの内容をメモリに読み込む必要があります。ZIP が既にディスク上にある場合は、FileStream を使用することもできます。

MemoryStream を使用する場合は、その位置を 0 に設定してください。

memoryStream.Position = 0;

SharpZipLib の使用方法によっては、 ZipOutputStream にアクセスできる場合があります。あれば、使えると思います。

于 2013-02-12T06:41:12.540 に答える
0

問題には多くの理由が考えられますが、

  1. ファイルの日付と時刻を確認する
  2. ファイルのサイズ (サーバー設定に基づく)
  3. 別のフォーマットを試す (rar、7z など)
于 2013-02-12T06:41:41.723 に答える