public:
static void CreateMessageWithAttachment(String* server)
{
// Specify the file to be attached and sent.
// This example assumes that a file named Data.xls exists in the
// current working directory.
String* file = S"data.xls";
// Create a message and set up the recipients.
MailMessage* message = new MailMessage(
S"jane@contoso.com",
S"ben@contoso.com",
S"Quarterly data report.",
S"See the attached spreadsheet.");
// Create the file attachment for this e-mail message.
Attachment* data = new Attachment();
data->SetContentFromFile(file, 0, MediaTypeNames::Application::Octet);
// Add time stamp information for the file.
ContentDisposition* disposition = data->ContentDisposition;
disposition->CreationDate = System::IO::File::GetCreationTime(file);
disposition->ModificationDate = System::IO::File::GetLastWriteTime(file);
disposition->ReadDate = System::IO::File::GetLastAccessTime(file);
// Add the file attachment to this e-mail message.
message->Attachments->Add(data);
//Send the message.
SmtpClient* client = new SmtpClient(server);
// Add credentials if the SMTP server requires them.
client->Credentials = CredentialCache::DefaultNetworkCredentials;
client->Send(message);
// Display the values in the ContentDisposition for the attachment.
ContentDisposition* cd = data->ContentDisposition;
Console::WriteLine(S"Content disposition");
Console::WriteLine(cd);
Console::WriteLine(S"File {0}",cd->FileName);
Console::WriteLine(S"Size {0}", __box(cd->Size));
Console::WriteLine(S"Creation {0}", __box(cd->CreationDate));
Console::WriteLine(S"Modification {0}", __box(cd->ModificationDate));
Console::WriteLine(S"Read {0}", __box(cd->ReadDate));
Console::WriteLine(S"Inline {0}", __box(cd->Inline));
Console::WriteLine(S"Parameters: {0}", __box(cd->Parameters->Count));
IEnumerator* myEnum1 = cd->Parameters->GetEnumerator();
while (myEnum1->MoveNext())
{
DictionaryEntry* d = __try_cast<DictionaryEntry*>(myEnum1->Current);
Console::WriteLine(S"{0} = {1}", d->Key, d->Value);
}
data->Dispose();
client->Dispose();
}