作成日: 2014/04/18 最終更新日: 2014/04/18
文書種別
使用方法
詳細
添付ファイルは、基本的に MailMessage.Attachments から取得できます。
また、「Content-Disposition: inline」で添付されたファイルは、
MailMessage.Resources から取得することができます。
◎サンプルコード(VB)
◎サンプルコード(C#)
添付ファイルを取得する方法については、製品ヘルプの下記のページもご参照下さい。
◎製品ヘルプ
-メールの受信(POP)
-添付ファイルを保存する(POP)
また、「Content-Disposition: inline」で添付されたファイルは、
MailMessage.Resources から取得することができます。
◎サンプルコード(VB)
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
With Pop1
For Each msg As Dart.Mail.PopMessage In .Messages
'添付ファイルを取得します
GetAttachment(msg.Message)
'リソースを取得します
GetResources(msg.Message)
Next
End With
End Sub
Private Sub GetAttachment(ByVal m As Dart.Mail.MailMessage)
For Each att As Dart.Mail.Attachment In m.Attachments
att.Content.MoveTo("c:¥temp¥" & att.FileName)
''DecodeToMemory = Trueの場合
'Using f As New System.IO.FileStream("c:¥temp¥" & att.FileName, IO.FileMode.Create)
' att.GetContentStream.CopyTo(f)
'End Using
Next
End Sub
Private Sub GetResources(ByVal m As Dart.Mail.MailMessage)
For Each r As Dart.Mail.Resource In m.Resources
Dim strFile As String = r.ContentType.Name
If strFile = "" Then
strFile = r.ContentDisposition.FileName
End If
Using f As New System.IO.FileStream("c:¥temp¥" & strFile, IO.FileMode.Create)
f.Write(r.Content, 0, r.Content.Length)
End Using
Next
End Sub
With Pop1
For Each msg As Dart.Mail.PopMessage In .Messages
'添付ファイルを取得します
GetAttachment(msg.Message)
'リソースを取得します
GetResources(msg.Message)
Next
End With
End Sub
Private Sub GetAttachment(ByVal m As Dart.Mail.MailMessage)
For Each att As Dart.Mail.Attachment In m.Attachments
att.Content.MoveTo("c:¥temp¥" & att.FileName)
''DecodeToMemory = Trueの場合
'Using f As New System.IO.FileStream("c:¥temp¥" & att.FileName, IO.FileMode.Create)
' att.GetContentStream.CopyTo(f)
'End Using
Next
End Sub
Private Sub GetResources(ByVal m As Dart.Mail.MailMessage)
For Each r As Dart.Mail.Resource In m.Resources
Dim strFile As String = r.ContentType.Name
If strFile = "" Then
strFile = r.ContentDisposition.FileName
End If
Using f As New System.IO.FileStream("c:¥temp¥" & strFile, IO.FileMode.Create)
f.Write(r.Content, 0, r.Content.Length)
End Using
Next
End Sub
◎サンプルコード(C#)
private void button1_Click(object sender, EventArgs e)
{
foreach (Dart.Mail.PopMessage msg in pop1.Messages)
{
//添付ファイルを取得します
GetAttachment(msg.Message);
//リソースを取得します
GetResources(msg.Message);
}
}
private void GetAttachment(Dart.Mail.MailMessage m)
{
foreach (Dart.Mail.Attachment att in m.Attachments)
{
att.Content.MoveTo("c:¥¥temp¥¥" + att.FileName);
////DecodeToMemory = Trueの場合
//using (System.IO.FileStream f = new System.IO.FileStream("c:¥¥temp¥¥" + att.FileName, System.IO.FileMode.Create))
//{
// att.GetContentStream().CopyTo(f);
//}
}
}
private void GetResources(Dart.Mail.MailMessage m)
{
foreach (Dart.Mail.Resource r in m.Resources)
{
string s = r.ContentType.Name;
if (string.IsNullOrEmpty(s)) s = r.ContentDisposition.FileName;
using (System.IO.FileStream f = new System.IO.FileStream("c:¥¥temp¥¥" + s, System.IO.FileMode.Create))
{
f.Write(r.Content, 0, r.Content.Length);
}
}
}
{
foreach (Dart.Mail.PopMessage msg in pop1.Messages)
{
//添付ファイルを取得します
GetAttachment(msg.Message);
//リソースを取得します
GetResources(msg.Message);
}
}
private void GetAttachment(Dart.Mail.MailMessage m)
{
foreach (Dart.Mail.Attachment att in m.Attachments)
{
att.Content.MoveTo("c:¥¥temp¥¥" + att.FileName);
////DecodeToMemory = Trueの場合
//using (System.IO.FileStream f = new System.IO.FileStream("c:¥¥temp¥¥" + att.FileName, System.IO.FileMode.Create))
//{
// att.GetContentStream().CopyTo(f);
//}
}
}
private void GetResources(Dart.Mail.MailMessage m)
{
foreach (Dart.Mail.Resource r in m.Resources)
{
string s = r.ContentType.Name;
if (string.IsNullOrEmpty(s)) s = r.ContentDisposition.FileName;
using (System.IO.FileStream f = new System.IO.FileStream("c:¥¥temp¥¥" + s, System.IO.FileMode.Create))
{
f.Write(r.Content, 0, r.Content.Length);
}
}
}
添付ファイルを取得する方法については、製品ヘルプの下記のページもご参照下さい。
◎製品ヘルプ
-メールの受信(POP)
-添付ファイルを保存する(POP)
旧文書番号
37255