164 lines
6.6 KiB
VB.net
164 lines
6.6 KiB
VB.net
Namespace WebsitePanel.Providers.Mail
|
|
|
|
Public Class MailEnableListMember
|
|
Inherits MarshalByRefObject
|
|
|
|
Private AddressVal As String
|
|
Private AccountNameVal As String
|
|
Private ListNameVal As String
|
|
Private ListMemberTypeVal As Long
|
|
Private StatusVal As Long
|
|
Private HostVal As String
|
|
|
|
|
|
Private Structure ILISTMEMBERTYPE
|
|
<VBFixedString(256), System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValTStr, SizeConst:=256)> Public Address As String
|
|
<VBFixedString(128), System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValTStr, SizeConst:=128)> Public AccountName As String
|
|
<VBFixedString(128), System.Runtime.InteropServices.MarshalAs(System.Runtime.InteropServices.UnmanagedType.ByValTStr, SizeConst:=128)> Public ListName As String
|
|
Public Role As Integer
|
|
Public Status As Integer
|
|
End Structure
|
|
|
|
|
|
Private Declare Function ListMemberGet Lib "MEAILS.DLL" (ByRef lpListMember As ILISTMEMBERTYPE) As Integer
|
|
Private Declare Function ListMemberFindFirst Lib "MEAILS.DLL" (ByRef lpListMember As ILISTMEMBERTYPE) As Integer
|
|
Private Declare Function ListMemberFindNext Lib "MEAILS.DLL" (ByRef lpListMember As ILISTMEMBERTYPE) As Integer
|
|
Private Declare Function ListMemberAdd Lib "MEAILS.DLL" (ByRef lpListMember As ILISTMEMBERTYPE) As Integer
|
|
Private Declare Function ListMemberEdit Lib "MEAILS.DLL" (ByRef TargetListMember As ILISTMEMBERTYPE, ByRef NewListMember As ILISTMEMBERTYPE) As Integer
|
|
Private Declare Function ListMemberRemove Lib "MEAILS.DLL" (ByRef lpListMember As ILISTMEMBERTYPE) As Integer
|
|
Private Declare Function SetCurrentHost Lib "MEAILS.DLL" (ByVal CurrentHost As String) As Integer
|
|
|
|
Public Function SetHost() As Integer
|
|
SetHost = SetCurrentHost(Host)
|
|
End Function
|
|
|
|
|
|
Public Function FindFirstListMember() As Integer
|
|
Dim CListMember As ILISTMEMBERTYPE
|
|
CListMember.Address = Address
|
|
CListMember.AccountName = AccountName
|
|
CListMember.ListName = ListName
|
|
FindFirstListMember = ListMemberFindFirst(CListMember)
|
|
Address = CListMember.Address
|
|
AccountName = CListMember.AccountName
|
|
ListName = CListMember.ListName
|
|
End Function
|
|
|
|
Public Function FindNextListMember() As Integer
|
|
Dim CListMember As ILISTMEMBERTYPE
|
|
CListMember.Address = Address
|
|
CListMember.AccountName = AccountName
|
|
CListMember.ListName = ListName
|
|
FindNextListMember = ListMemberFindNext(CListMember)
|
|
Address = CListMember.Address
|
|
AccountName = CListMember.AccountName
|
|
ListName = CListMember.ListName
|
|
End Function
|
|
|
|
Public Function AddListMember() As Integer
|
|
Dim CListMember As ILISTMEMBERTYPE
|
|
CListMember.Address = Address
|
|
CListMember.AccountName = AccountName
|
|
CListMember.ListName = ListName
|
|
AddListMember = ListMemberAdd(CListMember)
|
|
Address = CListMember.Address
|
|
AccountName = CListMember.AccountName
|
|
ListName = CListMember.ListName
|
|
End Function
|
|
|
|
Public Function GetListMember() As Integer
|
|
Dim CListMember As ILISTMEMBERTYPE
|
|
CListMember.Address = Address
|
|
CListMember.AccountName = AccountName
|
|
CListMember.ListName = ListName
|
|
GetListMember = ListMemberGet(CListMember)
|
|
Address = CListMember.Address
|
|
AccountName = CListMember.AccountName
|
|
ListName = CListMember.ListName
|
|
End Function
|
|
Public Function RemoveListMember() As Integer
|
|
Dim CListMember As ILISTMEMBERTYPE
|
|
CListMember.Address = Address
|
|
CListMember.AccountName = AccountName
|
|
CListMember.ListName = ListName
|
|
RemoveListMember = ListMemberRemove(CListMember)
|
|
Address = CListMember.Address
|
|
AccountName = CListMember.AccountName
|
|
ListName = CListMember.ListName
|
|
End Function
|
|
|
|
Public Function EditListMember(ByVal NewAddress, ByVal NewAccountName, ByVal NewListName, ByVal NewListMemberType, ByVal NewStatus) As Integer
|
|
Dim CListMember As ILISTMEMBERTYPE
|
|
Dim CListMemberData As ILISTMEMBERTYPE
|
|
' Get the Find Stuff Set up
|
|
CListMember.Address = Address
|
|
CListMember.AccountName = AccountName
|
|
CListMember.ListName = ListName
|
|
' Get the Data Set up
|
|
CListMemberData.Address = NewAddress
|
|
CListMemberData.AccountName = NewAccountName
|
|
CListMemberData.ListName = NewListName
|
|
EditListMember = ListMemberEdit(CListMember, CListMemberData)
|
|
|
|
NewAddress = CListMemberData.Address
|
|
NewAccountName = CListMemberData.AccountName
|
|
NewListName = CListMemberData.ListName
|
|
End Function
|
|
|
|
Public Property Address() As String
|
|
Get
|
|
Return Me.AddressVal
|
|
End Get
|
|
Set(ByVal value As String)
|
|
Me.AddressVal = value
|
|
End Set
|
|
End Property
|
|
|
|
Public Property AccountName() As String
|
|
Get
|
|
Return Me.AccountNameVal
|
|
End Get
|
|
Set(ByVal value As String)
|
|
Me.AccountNameVal = value
|
|
End Set
|
|
End Property
|
|
|
|
Public Property ListName() As String
|
|
Get
|
|
Return Me.ListNameVal
|
|
End Get
|
|
Set(ByVal value As String)
|
|
Me.ListNameVal = value
|
|
End Set
|
|
End Property
|
|
|
|
Public Property ListMemberType() As Long
|
|
Get
|
|
Return Me.ListMemberTypeVal
|
|
End Get
|
|
Set(ByVal value As Long)
|
|
Me.ListMemberTypeVal = value
|
|
End Set
|
|
End Property
|
|
|
|
Public Property Status() As Long
|
|
Get
|
|
Return Me.StatusVal
|
|
End Get
|
|
Set(ByVal value As Long)
|
|
Me.StatusVal = value
|
|
End Set
|
|
End Property
|
|
|
|
Public Property Host() As String
|
|
Get
|
|
Return Me.HostVal
|
|
End Get
|
|
Set(ByVal value As String)
|
|
Me.HostVal = value
|
|
End Set
|
|
End Property
|
|
|
|
End Class
|
|
|
|
End Namespace
|