public static void Run()
{
// ExStart:SignAMessage
// The path to the File directory.
string dataDir = RunExamples.GetDataDir_SMTP();
string publicCertFile = dataDir + "MartinCertificate.cer";
string privateCertFile = dataDir + "MartinCertificate.pfx";
X509Certificate2 publicCert = new X509Certificate2(publicCertFile);
X509Certificate2 privateCert = new X509Certificate2(privateCertFile, "password");
MailMessage msg = new MailMessage("[email protected]", "[email protected]", "Signed message only", "Test Body of signed message");
MailMessage signed = msg.AttachSignature(privateCert);
MailMessage encrypted = signed.Encrypt(publicCert);
MailMessage decrypted = encrypted.Decrypt(privateCert);
MailMessage unsigned = decrypted.RemoveSignature();//The original message with proper body
MapiMessage mapi = MapiMessage.FromMailMessage(unsigned);
// ExEnd:SignAMessage
}
}