📄 csmtpinterface.cls
字号:
Dim m_AccountClass As Account.AccountClass
Set m_AccountClass = GetAccountClass
m_AccountClass.GetUsers strAccountSql, m_UserTypeTypes
Set m_AccountClass = Nothing
'********************************************************************************
'********************************************************************************
'取邮件信息
Dim m_MailType As MailDll.MailType
Dim m_MailTypes As MailDll.Mails
Dim C_Mail As MailDll.Mail
Set C_Mail = New MailDll.Mail
C_Mail.Init gdbCurrentDB, m_E_ViewMode
'********************************************************************************
SendLocalAllMail = True
'显示该窗体
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 i As Long
Dim lngMailCounter As Long
Dim lngUserCounter As Long
For lngUserCounter = 0 To m_UserTypeTypes.Count - 1
If mCSendMail.ProcessCancel Then
Unload f
Exit Function
End If
LSet m_UserTypeType = m_UserTypeTypes.UserType(lngUserCounter)
m_MailUserType.LngUserID = m_UserTypeType.LngUserID
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
If m_EmployeeID > 0 Then
strsql = "select * from mail where strMailBoxTag='SendBox' and lnguserid=" & m_UserTypeType.LngUserID & " and Mail.lngEmployeeID=" & m_EmployeeID
Else
strsql = "select * from mail where strMailBoxTag='SendBox' and lnguserid=" & m_UserTypeType.LngUserID & " and Mail.lngEmployeeID=0"
End If
C_Mail.GetMails strsql, m_MailTypes, False, False, True, False
'如果该帐户有邮件
If m_MailTypes.Count > 0 Then
'********************************************************************************
'发送单封邮件
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 = m_UserTypeType.LngEmployeeID
m_LogType.strComputerName = GetCurComputerName
m_LogType.strUserName = m_UserTypeType.AccountName
m_LogType.strLogContent = "开始发送邮件->"
'连接服务器(根据本地帐户连接)
mCSendMail.ProcessCancel = False
If mCSendMail.ProcessConnectSever(m_MailUserType) Then
For lngMailCounter = 0 To m_MailTypes.Count - 1
LSet m_MailType = m_MailTypes.Mail(lngMailCounter)
'单个帐户
'********************************************************************************
'收件人和抄送人
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_ContactCopyType(UBound(m_MailType.lngCopy))
ReDim m_ContactCopyTypeCSMTP(UBound(m_MailType.lngCopy))
ReDim m_ContactReceiverType(UBound(m_MailType.lngReceiverID))
ReDim m_ContractType(UBound(m_MailType.lngReceiverID))
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))
End If
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
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -