在@dvmu 的发送邮件的基础上改写成的群发邮件功能块
vb.net吧
全部回复
仅看楼主
level 7
暴牙归来 楼主
2016年10月03日 09点10分 1
level 7
暴牙归来 楼主
Function IsItMailbox(ByVal MailAddr As String) As Boolean
If InStr(1, MailAddr, "@") > 1 And InStr(3, MailAddr, ".") And Microsoft.VisualBasic.Right$(MailAddr, 1) <> "." Then
IsItMailbox = True
Else
IsItMailbox = False
End If
End Function
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
If IsItMailbox(Me.TextBox2.Text) = True Then
If Me.ListBox1.Items.Contains(Me.TextBox2.Text) = False Then
Me.ListBox1.Items.Add(Me.TextBox2.Text)
End If
Else
MessageBox.Show("这不是邮件地址哦", "添加邮件地址失败", MessageBoxButtons.OK, MessageBoxIcon.Warning)
End If
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
For i As Integer = 0 To Me.ListBox1.SelectedItems.Count - 1
Me.ListBox1.Items.Remove(Me.ListBox1.SelectedItems(i))
Next
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
If waiti > 0 Then
waiti = waiti - 1
Else
waiti = 3
Me.Timer1.Enabled = False
Me.ProgressBar1.Value = mailc
If mailc <= Me.ListBox1.Items.Count - 1 Then
addstr = String.Empty
addstr = Me.ListBox1.Items(mailc)
mailc += 1
Me.Timer2.Enabled = True
Me.Timer2.Interval = 1
Else
Me.GroupBox1.Enabled = True
Me.GroupBox2.Enabled = True
Me.ListBox1.Enabled = True
Me.TextBox2.Enabled = True
Me.Button2.Enabled = True
Me.Button3.Enabled = True
Me.Label1.Enabled = True
Me.Label2.Enabled = True
Me.Label3.Enabled = True
Me.Label7.Enabled = True
Me.txtFrom.Enabled = True
Me.txtTo.Enabled = True
Me.txtSubject.Enabled = True
Me.TextBox1.Enabled = True
Me.Button1.Enabled = True
Me.btnSend.Enabled = True
Me.txtContent.Enabled = True
Me.ComboBox1.Enabled = True
MessageBox.Show("成功发送邮件" & succec & "个" & vbCrLf & "邮件发送失败" & errorc & "个", "邮件发送完毕", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If
End If
End Sub
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
If waiti > 0 Then
waiti = waiti - 1
Else
waiti = 3
sendmail(addstr)
Me.Timer2.Enabled = False
Me.Timer1.Enabled = True
Me.Timer1.Interval = 1
End If
End Sub
End Class
2016年10月03日 09点10分 5
level 13
InStr 的替代是 SubString
Right 的替代还是 SubString
MsgBox虽然是向后兼容成员,但它有时提供了MessageBox不具备的功能,因此可以放心使用而不必担心在以后的.NET Framework被移除。
.
2016年10月03日 10点10分 6
level 8
十五字
十五字十五字十五字十五字十五字
2016年10月03日 10点10分 7
level 11
我越来越怀疑你是从vb6过来的了[哈哈]
可以尝试用下andalso而不是and;
这么久了,一直看你用timer,没见你用过线程、异步、并行、任务啥的,该去学学了
2016年10月03日 15点10分 8
andalso除了短路求值还有啥用?[滑稽]白白多按四个字符 。 orelse也是。
2016年10月08日 09点10分
回复
杰克冻人之怒
:还有一个,andalso的短路跟vb6里面的iif短路实现是不一样的
2016年10月08日 15点10分
@闪星2 那又怎样 [滑稽]快点快点呗,许多语言默认短路,vb.net不是,奇葩[滑稽]
2016年10月10日 11点10分
1