📄 csmtpinterface.cls
字号:
m_MailUserType.AccountName = m_UserTypeType.AccountName
m_MailUserType.Password = m_UserTypeType.Password
m_MailUserType.UserName = m_UserTypeType.UserName
m_MailUserType.lngDepartmentID = m_UserTypeType.lngDepartmentID
m_MailUserType.UserEmailAddress = m_UserTypeType.UserEmailAddress
m_MailUserType.BlnInclude = m_UserTypeType.BlnInclude
m_MailUserType.POP3SeverName = m_UserTypeType.POP3SeverName
m_MailUserType.SMTPSeverName = m_UserTypeType.SMTPSeverName
m_MailUserType.StrSMTPPort = m_UserTypeType.StrSMTPPort
m_MailUserType.StrPOP3Port = m_UserTypeType.StrPOP3Port
m_MailUserType.LngTimeOut = m_UserTypeType.LngTimeOut
'm_MailUserType.BlnDefault = m_UserTypeType.BlnDefault
m_MailUserType.blnSendMailCheck = m_UserTypeType.blnSendMailCheck
m_MailUserType.BlnSameAsReceiptMail = m_UserTypeType.BlnSameAsReceiptMail
m_MailUserType.StrCheckUserName = m_UserTypeType.StrCheckUserName
m_MailUserType.StrCheckPassWord = m_UserTypeType.StrCheckPassWord
m_MailUserType.StrReceiveAttchPath = m_UserTypeType.StrReceiveAttchPath
m_MailUserType.StrReceiveFilePath = m_UserTypeType.StrReceiveFilePath
m_MailUserType.StrSendAttchPath = m_UserTypeType.StrSendAttchPath
m_MailUserType.StrSendFilePath = m_UserTypeType.StrSendFilePath
m_MailUserType.BlnSetMangeDir = m_UserTypeType.BlnSetMangeDir
m_MailUserType.strContactName = m_UserTypeType.strContactName
m_MailUserType.intAutoReceive = m_UserTypeType.intAutoReceive
m_MailUserType.intAutoMinute = m_UserTypeType.intAutoMinute
m_MailUserType.intAutoFenFa = m_UserTypeType.intAutoFenFa
m_MailUserType.intAutoFenFaMinute = m_UserTypeType.intAutoFenFaMinute
m_MailUserType.BlnNotDelete = m_UserTypeType.BlnNotDelete
'********************************************************************************
'********************************************************************************
'收件人和抄送人
Dim i As Long
Dim m_ContactCopyType() As PContact.Contact
Dim m_ContactReceiverType() As PContact.Contact
Dim m_ContractType() As CSMTP.ContactType
Dim m_ContactCopyTypeCSMTP() As CSMTP.ContactType
ReDim m_ContactCopyTypeCSMTP(UBound(m_MailType.lngCopy))
ReDim m_ContactCopyType(UBound(m_MailType.lngCopy))
ReDim m_ContactReceiverType(UBound(m_MailType.lngReceiverID))
ReDim m_ContractType(UBound(m_MailType.lngReceiverID))
'显示该窗体
Dim mcShowModal As New cShowModal
If blnShowMsg Then
mcShowModal.ShowModal f, frmMain
f.Refresh
f.Caption = "发送邮件"
f.ProgressBar1.value = 0
f.txtMessages.Clear
End If
Dim C_Contact As PContact.clsContact
Set C_Contact = New PContact.clsContact
C_Contact.Init gdbCurrentDB
For i = 0 To UBound(m_MailType.lngCopy)
If m_MailType.lngCopy(i) <> 0 Then
Call C_Contact.GetContact(m_MailType.lngCopy(i), m_ContactCopyType(i))
m_ContactCopyTypeCSMTP(i).lngContactID = m_ContactCopyType(i).lngContactID
m_ContactCopyTypeCSMTP(i).strContactName = m_ContactCopyType(i).strContactName
m_ContactCopyTypeCSMTP(i).lngPositionID = m_ContactCopyType(i).lngPositionID
m_ContactCopyTypeCSMTP(i).strWorkCompany = m_ContactCopyType(i).strWorkCompany
m_ContactCopyTypeCSMTP(i).strWorkPostalCode = m_ContactCopyType(i).strWorkPostalCode
m_ContactCopyTypeCSMTP(i).strWorkProvince = m_ContactCopyType(i).strWorkProvince
m_ContactCopyTypeCSMTP(i).strWorkCity = m_ContactCopyType(i).strWorkCity
m_ContactCopyTypeCSMTP(i).strWorkAddress = m_ContactCopyType(i).strWorkAddress
m_ContactCopyTypeCSMTP(i).strWorkTel = m_ContactCopyType(i).strWorkTel
m_ContactCopyTypeCSMTP(i).strWorkTel2 = m_ContactCopyType(i).strWorkTel2
m_ContactCopyTypeCSMTP(i).strWorkFax = m_ContactCopyType(i).strWorkFax
m_ContactCopyTypeCSMTP(i).strWorkWeb = m_ContactCopyType(i).strWorkWeb
m_ContactCopyTypeCSMTP(i).strHomePostalCode = m_ContactCopyType(i).strHomePostalCode
m_ContactCopyTypeCSMTP(i).strHomeProvince = m_ContactCopyType(i).strHomeProvince
m_ContactCopyTypeCSMTP(i).strHomeCity = m_ContactCopyType(i).strHomeCity
m_ContactCopyTypeCSMTP(i).strHomeAddress = m_ContactCopyType(i).strHomeAddress
m_ContactCopyTypeCSMTP(i).strHomeTel = m_ContactCopyType(i).strHomeTel
m_ContactCopyTypeCSMTP(i).strHomeTel2 = m_ContactCopyType(i).strHomeTel2
m_ContactCopyTypeCSMTP(i).strHomeFax = m_ContactCopyType(i).strHomeFax
m_ContactCopyTypeCSMTP(i).strEmail = m_ContactCopyType(i).strEmail
m_ContactCopyTypeCSMTP(i).strEmail2 = m_ContactCopyType(i).strEmail2
m_ContactCopyTypeCSMTP(i).strMobiePhone = m_ContactCopyType(i).strMobiePhone
m_ContactCopyTypeCSMTP(i).strICQ = m_ContactCopyType(i).strICQ
m_ContactCopyTypeCSMTP(i).strMessager = m_ContactCopyType(i).strMessager
m_ContactCopyTypeCSMTP(i).strQQ = m_ContactCopyType(i).strQQ
m_ContactCopyTypeCSMTP(i).strPersonalWeb = m_ContactCopyType(i).strPersonalWeb
m_ContactCopyTypeCSMTP(i).strBeeper = m_ContactCopyType(i).strBeeper
m_ContactCopyTypeCSMTP(i).StrMemo = m_ContactCopyType(i).StrMemo
m_ContactCopyTypeCSMTP(i).strOffice = m_ContactCopyType(i).strOffice
m_ContactCopyTypeCSMTP(i).strCustomWork = m_ContactCopyType(i).strCustomWork
m_ContactCopyTypeCSMTP(i).strNickName = m_ContactCopyType(i).strNickName
m_ContactCopyTypeCSMTP(i).strGender = m_ContactCopyType(i).strGender
m_ContactCopyTypeCSMTP(i).dteBirthday = m_ContactCopyType(i).dteBirthday
m_ContactCopyTypeCSMTP(i).strPreference = m_ContactCopyType(i).strPreference
m_ContactCopyTypeCSMTP(i).strStrongSuit = m_ContactCopyType(i).strStrongSuit
m_ContactCopyTypeCSMTP(i).strPersonalCustom = m_ContactCopyType(i).strPersonalCustom
m_ContactCopyTypeCSMTP(i).strHomeCustom = m_ContactCopyType(i).strHomeCustom
m_ContactCopyTypeCSMTP(i).strSpouse = m_ContactCopyType(i).strSpouse
m_ContactCopyTypeCSMTP(i).strHomeMember = m_ContactCopyType(i).strHomeMember
m_ContactCopyTypeCSMTP(i).lngCommunicationAddress = m_ContactCopyType(i).lngCommunicationAddress
m_ContactCopyTypeCSMTP(i).strPhotoFilePath = m_ContactCopyType(i).strPhotoFilePath
m_ContactCopyTypeCSMTP(i).dteUpdateDate = m_ContactCopyType(i).dteUpdateDate
m_ContactCopyTypeCSMTP(i).blnIsNew = m_ContactCopyType(i).blnIsNew
' m_ContactCopyTypeCSMTP(i).lngUserID = m_ContactCopyType(i).lngUserID
m_ContactCopyTypeCSMTP(i).LngEmployeeID = m_ContactCopyType(i).LngEmployeeID
End If
Next i
For i = 0 To UBound(m_MailType.lngReceiverID)
If m_MailType.lngReceiverID(i) <> 0 Then
Call C_Contact.GetContact(m_MailType.lngReceiverID(i), m_ContactReceiverType(i))
m_ContractType(i).lngContactID = m_ContactReceiverType(i).lngContactID
m_ContractType(i).strContactName = m_ContactReceiverType(i).strContactName
m_ContractType(i).lngPositionID = m_ContactReceiverType(i).lngPositionID
m_ContractType(i).strWorkCompany = m_ContactReceiverType(i).strWorkCompany
m_ContractType(i).strWorkPostalCode = m_ContactReceiverType(i).strWorkPostalCode
m_ContractType(i).strWorkProvince = m_ContactReceiverType(i).strWorkProvince
m_ContractType(i).strWorkCity = m_ContactReceiverType(i).strWorkCity
m_ContractType(i).strWorkAddress = m_ContactReceiverType(i).strWorkAddress
m_ContractType(i).strWorkTel = m_ContactReceiverType(i).strWorkTel
m_ContractType(i).strWorkTel2 = m_ContactReceiverType(i).strWorkTel2
m_ContractType(i).strWorkFax = m_ContactReceiverType(i).strWorkFax
m_ContractType(i).strWorkWeb = m_ContactReceiverType(i).strWorkWeb
m_ContractType(i).strHomePostalCode = m_ContactReceiverType(i).strHomePostalCode
m_ContractType(i).strHomeProvince = m_ContactReceiverType(i).strHomeProvince
m_ContractType(i).strHomeCity = m_ContactReceiverType(i).strHomeCity
m_ContractType(i).strHomeAddress = m_ContactReceiverType(i).strHomeAddress
m_ContractType(i).strHomeTel = m_ContactReceiverType(i).strHomeTel
m_ContractType(i).strHomeTel2 = m_ContactReceiverType(i).strHomeTel2
m_ContractType(i).strHomeFax = m_ContactReceiverType(i).strHomeFax
m_ContractType(i).strEmail = m_ContactReceiverType(i).strEmail
If Trim(m_ContractType(i).strEmail) = "" Then
BlnReceiverOK = False
Else
BlnReceiverOK = True
End If
m_ContractType(i).strEmail2 = m_ContactReceiverType(i).strEmail2
m_ContractType(i).strMobiePhone = m_ContactReceiverType(i).strMobiePhone
m_ContractType(i).strICQ = m_ContactReceiverType(i).strICQ
m_ContractType(i).strMessager = m_ContactReceiverType(i).strMessager
m_ContractType(i).strQQ = m_ContactReceiverType(i).strQQ
m_ContractType(i).strPersonalWeb = m_ContactReceiverType(i).strPersonalWeb
m_ContractType(i).strBeeper = m_ContactReceiverType(i).strBeeper
m_ContractType(i).StrMemo = m_ContactReceiverType(i).StrMemo
m_ContractType(i).strOffice = m_ContactReceiverType(i).strOffice
m_ContractType(i).strCustomWork = m_ContactReceiverType(i).strCustomWork
m_ContractType(i).strNickName = m_ContactReceiverType(i).strNickName
m_ContractType(i).strGender = m_ContactReceiverType(i).strGender
m_ContractType(i).dteBirthday = m_ContactReceiverType(i).dteBirthday
m_ContractType(i).strPreference = m_ContactReceiverType(i).strPreference
m_ContractType(i).strStrongSuit = m_ContactReceiverType(i).strStrongSuit
m_ContractType(i).strPersonalCustom = m_ContactReceiverType(i).strPersonalCustom
m_ContractType(i).strHomeCustom = m_ContactReceiverType(i).strHomeCustom
m_ContractType(i).strSpouse = m_ContactReceiverType(i).strSpouse
m_ContractType(i).strHomeMember = m_ContactReceiverType(i).strHomeMember
m_ContractType(i).lngCommunicationAddress = m_ContactReceiverType(i).lngCommunicationAddress
m_ContractType(i).strPhotoFilePath = m_ContactReceiverType(i).strPhotoFilePath
m_ContractType(i).dteUpdateDate = m_ContactReceiverType(i).dteUpdateDate
m_ContractType(i).blnIsNew = m_ContactReceiverType(i).blnIsNew
m_ContractType(i).LngEmployeeID = m_ContactReceiverType(i).LngEmployeeID
End If
If m_MailType.lngReceiverID(i) <> 0 Then
Call C_Contact.GetContact(m_MailType.lngReceiverID(i), m_ContactReceiverType(i))
End If
Next i
If Not BlnReceiverOK Then
If blnShowMsg Then
f.MsgTop.Caption = "缺少收件人信息."
On Error Resume Next
'显示一些操作信息,比如系统正在干什么
f.txtMessages.AddItem ("缺少收件人信息")
f.txtMessages.ListIndex = f.txtMessages.NewIndex
End If
SendAMail = False
blnIsBusy = False
Unload f
Exit Function
End If
SendAMail = True
m_LogType.lngLogID = 0
m_LogType.lngLogClass = 0
m_LogType.lngMailID = m_MailType.lngMailID
m_LogType.strMailSubject = m_MailType.strSubject
m_LogType.strSendTo = m_MailType.StrReceiverString
m_LogType.dteLogDate = Format(Now, "ddddd ttttt")
m_LogType.LngEmployeeID = gLngEmployeeID1
m_LogType.strComputerName = GetCurComputerName
m_LogType.strUserName = m_UserTypeType.AccountName
m_LogType.strLogContent = "开始发送邮件->"
'连接服务器(根据本地帐户连接)
mCSendMail.ProcessCancel = False
If mCSendMail.ProcessConnectSever(m_MailUserType) Then
Else
SendAMail = False
m_LogType.strLogContent = m_LogType.strLogContent & "连接失败->"
CclsLog.SaveLog m_LogType, False, False
blnIsBusy = False
Unload f
Exit Function
End If
'设置收件人地址
If Not mCSendMail.ProcessSetReceiver(m_ContractType, m_ContactCopyTypeCSMTP) Then
SendAMail = False
m_LogType.strLogContent = m_LogType.strLogContent & "设置收件人失败->"
CclsLog.SaveLog m_LogType, False, False
blnIsBusy = False
Unload f
Exit Function
End If
'取待发数据文件
f.MsgCount.Caption = "待发邮件1封,正在发第1封"
'发送数据包
'strFileName 为编码后待发邮件的文件名称
If mCSendMail.ProcessSendMailData(m_MailType.StrMailFileName) Then
Else
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -