• Vui lòng đọc nội qui diễn đàn để tránh bị xóa bài viết
  • Tìm kiếm trước khi đặt câu hỏi

Gởi Email qua smtp.gmail.com

Các ví dụ nho nhỏ và những thứ linh tinh không thuộc nhóm nào
User avatar
truongphu
VIP
VIP
Posts: 4766
Joined: Sun 04/11/2007 10:57 am
Location: Cam Đức, Khánh hòa
Has thanked: 14 times
Been thanked: 519 times

Gởi Email qua smtp.gmail.com

Postby truongphu » Sat 03/01/2009 9:09 pm

Tên chương trình: Gởi Email qua smtp.gmail.com
Ngôn ngữ lập trình: VB6
Tác giả: truongphu
Chức năng: Gởi Email qua smtp.gmail.com
Chưa hổ trợ tiếng Việt
Có thể phát triển tiếp: kèm code



Gmail.rar
(8.9 KiB) Downloaded 2792 times



---------
22/7/2010: Khuyến học: project chạy tốt
Điền vào là OK, cứ than chạy không được hoài!
Attachments
CDO mail SMTP.rar
(1.87 KiB) Downloaded 1810 times


o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

nvtlib
Posts: 3
Joined: Sat 31/01/2009 4:27 pm
Location: Ninh Binh
Contact:

Re: Gởi Email qua smtp.gmail.com

Postby nvtlib » Sun 22/02/2009 8:04 am

Tui cũng có một cái tương tự=C# :D.Có đìu code hơi ngu ^^
Attachments
sent_mail.rar
(39.84 KiB) Downloaded 1032 times
Tôi yêu .Net-Control cực đẹp cho .Net [url]www.libdotnet.tk[/url]

tindl88
Thành viên tâm huyết
Thành viên tâm huyết
Posts: 363
Joined: Sat 26/04/2008 6:10 pm
Has thanked: 16 times
Been thanked: 10 times

Re: Gởi Email qua smtp.gmail.com

Postby tindl88 » Sat 02/05/2009 12:41 pm

muốn gửi có tiếng việt và xuống dòng thì sửa lại như sau:

Code: Select all

  1. With iMsg
  2. .BodyPart.Charset = "UTF-8"
  3. .To = Text4
  4. .CC = ""  ' <- Gửi tới nhiều người, người nhận sẽ thấy danh sách địa chỉ email của những người mà bạn gởi.
  5. .BCC = ""  ' <- Gửi tới nhiều người, người nhận sẽ không thấy danh sách địa chỉ email của những người mà bạn gởi.
  6. 'Các địa chỉ dc cách nhau bởi dấu "," ví dụ tindl88@yahoo.com,tindl88@gmail.com
  7. '.AddAttachment()
  8. .From = Text3 & "<" & Text1 & ">"
  9. .Subject = Text5
  10. .HTMLBody = Replace$(Text6,vbcrlf,"<br>")
  11. .Textbody = Text6
  12. .Sender = Text3
  13. .Organization = Text3
  14. .ReplyTo = Text1
  15. Set .Configuration = iConf
  16. .Send
  17. End With
cứng nhắc...vớ vẩn

Tuan
Thành viên chính thức
Thành viên chính thức
Posts: 39
Joined: Sun 30/03/2008 10:39 pm
Has thanked: 15 times
Been thanked: 3 times
Contact:

Re: Gởi Email qua smtp.gmail.com

Postby Tuan » Sat 08/08/2009 1:23 pm

đã thêm thư viện cdosys.dll rồi , có thử một số máy thì gởi mail OK , còn một số khi gởi nó bị lỗi ngay lệnh .send Cho hỏi làm sao Fix ngay chỗ này.

Code: Select all

  1. .From = Text3 & "<" & Text1 & ">"
  2. .Subject = Text5
  3. .HTMLBody = Text6
  4. .TextBody = Text6
  5. .Sender = Text3
  6. .Organization = Text3
  7. .ReplyTo = Text1
  8. Set .Configuration = iConf
  9. .Send  => nó bị lỗi ngay lệnh .send

User avatar
truongphu
VIP
VIP
Posts: 4766
Joined: Sun 04/11/2007 10:57 am
Location: Cam Đức, Khánh hòa
Has thanked: 14 times
Been thanked: 519 times

Re: Gởi Email qua smtp.gmail.com

Postby truongphu » Sat 08/08/2009 3:46 pm

Tuan wrote:đã thêm thư viện cdosys.dll rồi


Tại sao bạn phải thêm nhỉ? thư viện cdosys.dll có ở mọi máy windows mà
* Nếu đã thêm, thì bạn nhớ đăng ký cho nó (regsvr32.exe)

Có vài bạn báo không mail được, tôi mới test lại vẫn êm

* Báo lỗi là do bạn không có account và password ở gmail, bạn vẫn test thử
* Lỗi tương tự cũng do chưa điền đầy đủ thông tin lên giao diện

Chúc các bạn thành công
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

mrcoding
Thành viên danh dự
Thành viên danh dự
Posts: 72
Joined: Thu 19/03/2009 2:03 pm
Location: Đà Nẵng
Been thanked: 4 times
Contact:

Re: Gởi Email qua smtp.gmail.com

Postby mrcoding » Sun 27/09/2009 7:27 pm

Code: Select all

  1.  
  2.    1. Set Flds = iConf.Fields
  3.    3. schema = "http://schemas.microsoft.com/cdo/configuration/"
  4.    4. Flds.Item(schema & "sendusing") = 2
  5.  

Chào bác truongphu. em chưa hiểu schema dùng để làm cái gì / bác giải thích cho em được không ?
http://www.mediafire.com/hothanhnam

User avatar
truongphu
VIP
VIP
Posts: 4766
Joined: Sun 04/11/2007 10:57 am
Location: Cam Đức, Khánh hòa
Has thanked: 14 times
Been thanked: 519 times

Re: Gởi Email qua smtp.gmail.com

Postby truongphu » Sun 27/09/2009 8:19 pm

mrcoding wrote:schema dùng để làm cái gì / bác giải thích cho em được không


Tôi chỉ biết sơ sơ
schema, ngôn ngữ thông thường là sơ đồ, như schema mạch điện...

Trong web, schema hiểu là lược đồ cấu trúc tập tin
schema = "http://schemas.microsoft.com/cdo/configuration/"
là khai báo lược đồ tập tin tham chiếu đến địa chỉ URL đã nêu
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

mrcoding
Thành viên danh dự
Thành viên danh dự
Posts: 72
Joined: Thu 19/03/2009 2:03 pm
Location: Đà Nẵng
Been thanked: 4 times
Contact:

Re: Gởi Email qua smtp.gmail.com

Postby mrcoding » Sun 27/09/2009 8:28 pm

schema = "http://schemas.microsoft.com/cdo/configuration/"
đoạn mã này nghĩa là sao? chẳng lẽ nó phụ thuộc vào schemas của MS. nếu như ủl này đie thì sao? chương trình cũng tiêu luôn à???
http://www.mediafire.com/hothanhnam

User avatar
xuanquy_th
Guru
Guru
Posts: 803
Joined: Tue 05/08/2008 9:15 pm
Location: Thanh Hoá
Has thanked: 1 time
Been thanked: 10 times
Contact:

Re: Gởi Email qua smtp.gmail.com

Postby xuanquy_th » Sat 24/10/2009 4:35 pm

Một ví dụ cụ thể.

Code: Select all

  1.  
  2. Private Sub btnSend_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSend.Click
  3.         Me.Cursor = Cursors.WaitCursor
  4.         Dim mFile As IO.FileInfo = Nothing, mFileSize As Double = 0
  5.         Dim mFileNames() As String = Nothing
  6.         If txtPath.Text.Length > 0 Then
  7.             mFileNames = txtPath.Text.Replace(";", ",").Split(",")
  8.             For i1 As Integer = 0 To UBound(mFileNames)
  9.                 If Not IO.File.Exists(mFileNames(i1)) Then
  10.                     ThongBao("Trong danh sách File bạn chọn có File không tồn tại.", "LRCO", TB.Dongy, IconTB.Thongtin)
  11.                     Me.Cursor = Cursors.Default : Exit Sub
  12.                 End If
  13.                 mFile = New IO.FileInfo(mFileNames(i1))
  14.                 mFileSize += ((mFile.Length / 1000) / 1024)
  15.                 If mFileSize > 25 Then
  16.                     ThongBao("Tổng dung lượng các File bạn gửi lớn hơn 25MB. Một lần gửi bạn chỉ có thể gửi tối đa là 25MB.", "LRCO", TB.Dongy, IconTB.Thongtin)
  17.                     Me.Cursor = Cursors.Default : Exit Sub
  18.                 End If
  19.             Next i1
  20.         End If
  21.         Do While Not fSendMail(txtGmailFrom.Text, txtGmailAsName.Text, txtPass.Text, txtMailTo.Text, txtSubject.Text, txtBody.Text, mFileNames, txtHost.Text, Val(txtPort.Text))
  22.             If ThongBao("Thất bại trong việc gửi Mail. Bạn có muốn thử lại không?", "LRCO", TB.CoKhong, IconTB.Cauhoi) = TBstyle.Khong Then Me.Cursor = Cursors.Default : Exit Sub
  23.         Loop
  24.         Me.Cursor = Cursors.Default
  25.         ThongBao("E-Mail đã được gửi!", "LRCO", TB.Dongy, IconTB.Thongtin)
  26.     End Sub
  27.  
  28.  
  29.  
  30. Public Function fSendMail(ByVal sFrom As String, ByVal sNameFrom As String, ByVal sPassword As String, ByVal sTo As String, ByVal sSubJect As String, ByVal sBody As String, Optional ByVal sPath() As String = Nothing, Optional ByVal sHost As String = "smtp.gmail.com", Optional ByVal iPort As Integer = 587) As Boolean
  31.         Try
  32.             Dim mail As New System.Net.Mail.MailMessage
  33.             If Not IsNothing(sPath) Then
  34.                 Dim MyAttachment As System.Net.Mail.Attachment = Nothing
  35.                 For i1 As Integer = 0 To UBound(sPath)
  36.                     If IO.File.Exists(sPath(i1)) Then
  37.                         MyAttachment = New System.Net.Mail.Attachment(sPath(i1))
  38.                         mail.Attachments.Add(MyAttachment)
  39.                     End If
  40.                 Next i1
  41.             End If
  42.             mail.IsBodyHtml = True
  43.             mail.BodyEncoding = System.Text.Encoding.UTF8
  44.             mail.From = New System.Net.Mail.MailAddress(sNameFrom & "<" & sFrom & ">")
  45.             mail.Subject = sSubJect
  46.             Dim mEmail() As String = sTo.Replace(";", ",").Replace(vbNewLine, ",").Replace(ChrW(Keys.Enter), ",").Replace(ChrW(10), ",").Split(",")
  47.             For i1 As Integer = 0 To UBound(mEmail)
  48.                 mail.Bcc.Add(New System.Net.Mail.MailAddress(mEmail(i1)))
  49.             Next i1
  50.             mail.Body = sBody
  51.             Dim VSmtpMail As New System.Net.Mail.SmtpClient
  52.             VSmtpMail.Timeout = 1200000
  53.             VSmtpMail.Host = sHost
  54.             VSmtpMail.Port = iPort
  55.             VSmtpMail.EnableSsl = True
  56.             VSmtpMail.Credentials = New System.Net.NetworkCredential(sFrom, sPassword)
  57.             VSmtpMail.SendAsyncCancel()
  58.             VSmtpMail.Send(mail)
  59.             Return True
  60.         Catch
  61.             MsgBox(Err.Description)
  62.             Return False
  63.         End Try
  64.     End Function
Khi Chúa Trời đóng cánh cửa này lại, Ngài sẽ mở một cánh cửa khác cho ta.
Nhưng ta thường nhìn quá lâu vào cánh cửa đã đóng nên không thấy được có một cánh cửa khác đang mở ra cho ta!!!

User avatar
truongphu
VIP
VIP
Posts: 4766
Joined: Sun 04/11/2007 10:57 am
Location: Cam Đức, Khánh hòa
Has thanked: 14 times
Been thanked: 519 times

Re: Gởi Email qua smtp.gmail.com

Postby truongphu » Tue 08/12/2009 3:26 pm

Một số bạn than phiền gởi mail không được
đến nay, tôi có test thử, vẫn tốt.

các bạn có thể bổ sung các thông số cập nhật :
viewtopic.php?f=7&t=10175&p=63905#p63905

download/file.php?id=7977
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

gmodvn
Posts: 8
Joined: Fri 29/01/2010 10:02 am

Re: Gởi Email qua smtp.gmail.com

Postby gmodvn » Wed 03/02/2010 8:35 am

Bác trường phú, sode bác lỗi rùi hay sao ây, em ghi địa chỉ thật, nhận là gửi đều của gmail, pass đúng mà nó có được đâu
.HTMLBody = Text1.Text

Image

gmodvn
Posts: 8
Joined: Fri 29/01/2010 10:02 am

Re: Gởi Email qua smtp.gmail.com

Postby gmodvn » Wed 03/02/2010 8:46 am

Sorry bác truongphu, lỗi tại em, ngu quá, down cái cdo smtp của bác về, tạ textbox, chỗ htmlbody = text1.text => lỗi :D đặt là text1 thì okie :D
Thank bác :D :D :D :D
Em để cả bài trên ai lỗi thì sửa nha

User avatar
truongphu
VIP
VIP
Posts: 4766
Joined: Sun 04/11/2007 10:57 am
Location: Cam Đức, Khánh hòa
Has thanked: 14 times
Been thanked: 519 times

Re: Gởi Email qua smtp.gmail.com

Postby truongphu » Wed 03/02/2010 8:49 am

Tôi test: tốt
* có bạn test: tốt
* có bạn test: không tốt

Vậy thì: cứ xem code trên như là code mẫu
bạn nào test chưa tốt, cứ tìm hiểu sâu thêm

(Đến nay, topic nầy tôi đã xóa rất nhiều bài viết cho chuyên đề gọn lại, các bài viết đó cũng chỉ nội dung: "Sao không gởi được?" hoặc "Gởi bình thường mà..")

Không lẽ cứ có bạn nào vì lý do gì đó, test không tốt, hỏi, ... liên tục vậy sao?

Đề mục nầy khóa ngang đây. Các bạn thông cảm
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

User avatar
truongphu
VIP
VIP
Posts: 4766
Joined: Sun 04/11/2007 10:57 am
Location: Cam Đức, Khánh hòa
Has thanked: 14 times
Been thanked: 519 times

Re: Gởi Email qua smtp.gmail.com

Postby truongphu » Thu 22/07/2010 10:39 pm

22/7/2010: Khuyến học: project chạy tốt
Điền vào là OK, cứ than chạy không được hoài!


Project:
download/file.php?id=9971
o0o--truongphu--o0o

.........
Ghé thăm:
Chuyện Linh Tinh

nonamenet
Posts: 1
Joined: Fri 01/10/2010 10:46 am

Re: Gởi Email qua smtp.gmail.com

Postby nonamenet » Fri 01/10/2010 10:52 am

làm thế nào để viết tiếng việt nhỉ
nội dung lại không thể xuống dòng
Shift + enter thì đưa con trỏ xuống hàng được nhưng mail nhận lại không nhận dạng được
phím enter đưa trỏ chuột lên textbox trên
1 list email gửi đi thì dạng CC ,có thể phát triển thành BCC được không ?
mail soft này không bị liệt vào spam

ljnhpr0
Thành viên chính thức
Thành viên chính thức
Posts: 10
Joined: Mon 29/03/2010 4:56 pm

Re: Gởi Email qua smtp.gmail.com

Postby ljnhpr0 » Mon 18/10/2010 1:46 pm

Tại sao minh không load được file cdosys.dll nhỉ. Ai giúp mình với. Báo lỗi "cdosys.dll could not be load"

tranquangphuong2001
Posts: 1
Joined: Thu 26/04/2012 4:38 pm

Re: Gởi Email qua smtp.gmail.com

Postby tranquangphuong2001 » Sun 06/05/2012 11:53 am

gửi email qua smtp.gmail.com thì mình làm OK rồi, bạn nào có thể share cách để mình có thể gửi email qua mail server khác như Yahoo! mail, hotmail, ... ??

bimio9
Posts: 3
Joined: Sun 03/06/2012 8:42 pm

Re: Gởi Email qua smtp.gmail.com

Postby bimio9 » Sun 03/06/2012 9:00 pm

Do mình đọc diển đàn này hay quá nên đã đăng ký như có lẽ mới đăng ký nên không được viết bài mới. Do đó mình xin được hỏi trong đây có gì MOD chuyển qua đúng chổ nha Thanks.
Hiện mình thấy có 1 số chương trình rất hay hình như là HOOK gì đó. Như Game VLTK trong giao diện Game gỏ CTRL + S thì chương trình trình auto tự bỏ dấu chọn chức năng tự đánh quái. Vậy mình có thể viết 1 chương trình ở Notepad mình nhấn chu Ctrl + T thì nó sẽ nhập vào là Thank you được không vậy?

bimio9
Posts: 3
Joined: Sun 03/06/2012 8:42 pm

Re: Gởi Email qua smtp.gmail.com

Postby bimio9 » Mon 04/06/2012 10:19 pm

Hihi
Mình đã tìm thấy cái mình cần rồi! Xin cám ơn T Phú nhiều nhiều!

newchip
Posts: 1
Joined: Wed 04/07/2012 3:13 pm
Has thanked: 1 time

Re: Gởi Email qua smtp.gmail.com

Postby newchip » Wed 04/07/2012 3:44 pm

Mình đã test thành công phần gửi mail đi, có đính kèm file. (GMAIL)
Nhưng mình chưa biết read mail và save file đính kèm như thế nào. Các bạn giúp mình.

Mình muốn làm 1 ctrinh` tự động lắng nghe xem trong tài khoản gmail của mình có mail nào có subject tên là "Test mail" thì đọc về và save file đính kèm về Desktop, còn những mail có Subject khác thì bỏ qua, ko đọc


Return to “[VB] Mã nguồn linh tinh”

Who is online

Users browsing this forum: No registered users and 0 guests