C# SMTP over Socks代理

C# SMTP over Socks代理,c#,proxy,smtp,C#,Proxy,Smtp,我对SMTP使用以下代码: MailMessage mail = new MailMessage(); mail.From = new System.Net.Mail.MailAddress(Global.username); mail.Subject = Global.subject; SmtpClient smtp = new SmtpClient(); smtp.Por

我对SMTP使用以下代码:

            MailMessage mail = new MailMessage();
            mail.From = new System.Net.Mail.MailAddress(Global.username);
            mail.Subject = Global.subject;

            SmtpClient smtp = new SmtpClient();
            smtp.Port = 587;
            smtp.EnableSsl = true;
            smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
            smtp.UseDefaultCredentials = false;
            smtp.Credentials = new NetworkCredential(Global.username, Global.password); 
            smtp.Host = "smtp.gmail.com";

            mail.To.Add(new MailAddress(Global.to));

            mail.IsBodyHtml = true;
            mail.Subject = Global.subject;
            mail.Body = Global.message;
            smtp.Send(mail);

这很好,但问题是我需要HTTP和Socks代理支持。我正在寻找可以用于商业目的的无醚库,或者我应该采取什么方法来运行代理。对于POP3和IMAP,我也需要这个,我想写我自己的包装会比找到已经存在的东西更容易,我只是不知道从哪里开始。我已经用HTTP和Socks支持完成了自己的HTTP包装,但我不确定SMTP、IMAP和POP3如何通过代理工作。。对我来说,做这件事最好的方法是什么?谢谢

Socks支持需要嵌入到SMTP类本身(或者至少是它管理套接字连接的部分),但这里的情况并非如此。您将有两个选择:

  • 使用内置袜子支持的
    MailMessage
    的替代品
  • 或者,您需要使用SOCKS代理/隧道应用程序或类,该应用程序或类将在本地系统上打开侦听套接字,并在其上接受连接。然后它将充当SOCKS客户端,并通过两种方式传递数据。您将设置您的
    MailMessage
    实例以使用此本地端口,并且数据将被正确包装以供您使用

  • Socks支持需要嵌入SMTP类本身(或者至少是它管理套接字连接的部分),但这里的情况并非如此。您将有两个选择:

  • 使用内置袜子支持的
    MailMessage
    的替代品
  • 或者,您需要使用SOCKS代理/隧道应用程序或类,该应用程序或类将在本地系统上打开侦听套接字,并在其上接受连接。然后它将充当SOCKS客户端,并通过两种方式传递数据。您将设置您的
    MailMessage
    实例以使用此本地端口,并且数据将被正确包装以供您使用
  • 使用如何?我以前在Python中使用过它,但没有在其他编程语言中使用过。

    使用它怎么样?我以前在Python中使用过它,但没有在其他编程语言中尝试过