📄 frmmailclient.frm
字号:
VERSION 5.00
Object = "{248DD890-BB45-11CF-9ABC-0080C7E7B78D}#1.0#0"; "MSWINSCK.OCX"
Begin VB.Form frmMailClient
BorderStyle = 3 'Fixed Dialog
Caption = "Test email client"
ClientHeight = 6735
ClientLeft = 45
ClientTop = 330
ClientWidth = 7350
Icon = "frmMailClient.frx":0000
LinkTopic = "Form1"
MaxButton = 0 'False
MinButton = 0 'False
ScaleHeight = 449
ScaleMode = 3 'Pixel
ScaleWidth = 490
StartUpPosition = 3 'Windows Default
Begin VB.CommandButton cmdDele2
Caption = "DELE 2"
Height = 315
Left = 5880
TabIndex = 25
Top = 5160
Width = 1335
End
Begin VB.CommandButton cmdDele1
Caption = "DELE 1"
Height = 315
Left = 5880
TabIndex = 24
Top = 4800
Width = 1335
End
Begin VB.CommandButton cmdPass
Caption = "PASS"
Height = 315
Left = 5880
TabIndex = 22
Top = 3000
Width = 1335
End
Begin VB.CommandButton cmdUser
Caption = "USER"
Height = 315
Left = 5880
TabIndex = 21
Top = 2640
Width = 1335
End
Begin VB.TextBox txtMailHost
Height = 285
Left = 720
TabIndex = 16
Text = "localhost"
Top = 480
Width = 1575
End
Begin VB.TextBox txtMailPort
Height = 285
Left = 720
TabIndex = 15
Text = "567"
Top = 840
Width = 1575
End
Begin VB.CommandButton cmdQuit
Caption = "QUIT"
Height = 315
Left = 5880
TabIndex = 12
Top = 5520
Width = 1335
End
Begin VB.CommandButton cmdRetr2
Caption = "RETR 2"
Height = 315
Left = 5880
TabIndex = 11
Top = 4440
Width = 1335
End
Begin VB.CommandButton cmdRetr1
Caption = "RETR 1"
Height = 315
Left = 5880
TabIndex = 10
Top = 4080
Width = 1335
End
Begin VB.CommandButton cmdList
Caption = "LIST"
Height = 315
Left = 5880
TabIndex = 9
Top = 3720
Width = 1335
End
Begin VB.CommandButton cmdStat
Caption = "STAT"
Height = 315
Left = 5880
TabIndex = 8
Top = 3360
Width = 1335
End
Begin VB.CommandButton cmdConnect
Caption = "Connect"
Height = 315
Left = 5880
TabIndex = 7
Top = 2280
Width = 1335
End
Begin MSWinsockLib.Winsock Winsock1
Left = 3360
Top = 2160
_ExtentX = 741
_ExtentY = 741
_Version = 393216
End
Begin VB.TextBox txtDataMon
Height = 3495
Left = 120
MultiLine = -1 'True
TabIndex = 6
Top = 2280
Width = 5535
End
Begin VB.TextBox txtPort
Height = 285
Left = 4440
TabIndex = 3
Text = "110"
Top = 840
Width = 1575
End
Begin VB.TextBox txtHost
Height = 285
Left = 4440
TabIndex = 1
Text = "localhost"
Top = 480
Width = 1575
End
Begin VB.Label Label10
Caption = "Simply click every single buttom from the top to the bottom to simulate a typical POP3 client connection scenario"
Height = 375
Left = 120
TabIndex = 26
Top = 6240
Width = 7095
End
Begin VB.Label lblConnected
Caption = "Not connected"
BeginProperty Font
Name = "MS Sans Serif"
Size = 8.25
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
ForeColor = &H000000FF&
Height = 255
Left = 120
TabIndex = 23
Top = 5880
Width = 1815
End
Begin VB.Label lblFullUser
Caption = "Label5"
BeginProperty Font
Name = "MS Sans Serif"
Size = 8.25
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 1920
TabIndex = 19
Top = 1680
Width = 1695
End
Begin VB.Label Label4
Caption = "Username sent to proxy:"
Height = 255
Left = 120
TabIndex = 20
Top = 1680
Width = 2295
End
Begin VB.Label Label9
Caption = "Server:"
Height = 255
Left = 120
TabIndex = 18
Top = 480
Width = 1815
End
Begin VB.Label Label8
Caption = "Port:"
Height = 255
Left = 120
TabIndex = 17
Top = 840
Width = 615
End
Begin VB.Label Label7
Caption = "Mail server:"
BeginProperty Font
Name = "MS Sans Serif"
Size = 8.25
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 120
TabIndex = 14
Top = 120
Width = 1215
End
Begin VB.Label Label3
Caption = "Username and password which are used are ""user"" and ""password"""
Height = 495
Left = 120
TabIndex = 4
Top = 1200
Width = 3015
End
Begin VB.Label Label6
Caption = "Proxy:"
BeginProperty Font
Name = "MS Sans Serif"
Size = 8.25
Charset = 0
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 255
Left = 3840
TabIndex = 13
Top = 120
Width = 1695
End
Begin VB.Label Label5
Caption = "Data monitor:"
Height = 255
Left = 120
TabIndex = 5
Top = 840
Width = 2295
End
Begin VB.Label Label2
Caption = "Port:"
Height = 255
Left = 3840
TabIndex = 2
Top = 840
Width = 615
End
Begin VB.Label Label1
Caption = "Server:"
Height = 255
Left = 3840
TabIndex = 0
Top = 480
Width = 1815
End
End
Attribute VB_Name = "frmMailClient"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
Private Sub cmdConnect_Click()
Winsock1.Close
Winsock1.Connect txtHost, txtPort
End Sub
Private Sub cmdDele1_Click()
If (Winsock1.State <> 7) Then Exit Sub
Send "DELE 1" + vbCrLf
End Sub
Private Sub cmdDele2_Click()
If (Winsock1.State <> 7) Then Exit Sub
Send "DELE 2" + vbCrLf
End Sub
Private Sub cmdList_Click()
If (Winsock1.State <> 7) Then Exit Sub
Send "LIST" + vbCrLf
End Sub
Private Sub cmdPass_Click()
If (Winsock1.State <> 7) Then Exit Sub
Send "PASS password" + vbCrLf
End Sub
Private Sub cmdQuit_Click()
If (Winsock1.State <> 7) Then Exit Sub
Send "QUIT" + vbCrLf
End Sub
Private Sub cmdRetr1_Click()
If (Winsock1.State <> 7) Then Exit Sub
Send "RETR 1" + vbCrLf
End Sub
Private Sub cmdRetr2_Click()
If (Winsock1.State <> 7) Then Exit Sub
Send "RETR 2" + vbCrLf
End Sub
Private Sub cmdStat_Click()
If (Winsock1.State <> 7) Then Exit Sub
Send "STAT" + vbCrLf
End Sub
Private Sub cmdUser_Click()
If (Winsock1.State <> 7) Then Exit Sub
Send "USER " + lblFullUser + vbCrLf
End Sub
Private Sub Command1_Click()
End Sub
Private Sub Command2_Click()
End Sub
Private Sub Form_Load()
UpdateFullUsername
End Sub
Private Sub Send(strData As String)
' sends data via 'Winsock1' and logs data in txtDataMon
txtDataMon = txtDataMon.Text + "-> " + strData
txtDataMon.SelStart = Len(txtDataMon)
Winsock1.SendData strData
End Sub
Private Sub UpdateFullUsername()
' build username which is sent to proxy server
lblFullUser = "user@" + txtMailHost + IIf(Val(txtMailPort) <> 110, ":" + CStr(Val(txtMailPort)), Empty)
End Sub
Private Sub txtMailHost_Change()
UpdateFullUsername
End Sub
Private Sub txtMailPort_Change()
UpdateFullUsername
End Sub
Private Sub Winsock1_Close()
lblConnected.Caption = "Not connected"
lblConnected.ForeColor = vbRed
End Sub
Private Sub Winsock1_Connect()
lblConnected.Caption = "Connected"
lblConnected.ForeColor = &H8000&
End Sub
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim x As String
' get data
Winsock1.GetData x
' add to log
txtDataMon.Text = txtDataMon.Text + x
txtDataMon.SelStart = Len(txtDataMon)
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -