Hallo Leute,
ich krieg es nicht hin die Mails aus dem Posteingang in einer Listbox aufzulisten bzw in einem Structure Array aufzulisten
Private Shared Sub List_Posteingang()
Dim esb = New ExchangeServiceBinding()
esb.Credentials = New NetworkCredential("user", "pass", "domain")
esb.Url = "https://exchange08/EWS/exchange.asmx"
esb.RequestServerVersionValue = New RequestServerVersion()
esb.RequestServerVersionValue.Version = _
ExchangeVersionType.Exchange2007_SP1
Dim Maildetails As Emaildetails
' Form the FindItem request.
Dim findItemRequest As New FindItemType()
findItemRequest.Traversal = ItemQueryTraversalType.Shallow
' Define which item properties are returned in the response.
Dim itemProperties As New ItemResponseShapeType()
itemProperties.BaseShape = DefaultShapeNamesType.AllProperties
' Add properties shape to the request.
findItemRequest.ItemShape = itemProperties
' Identify which folders to search to find items.
Dim folderIDArray As DistinguishedFolderIdType() = New _
DistinguishedFolderIdType(1) {}
folderIDArray(0) = New DistinguishedFolderIdType()
'folderIDArray(1) = New DistinguishedFolderIdType()
folderIDArray(0).Id = DistinguishedFolderIdNameType.inbox
'folderIDArray(1).Id = DistinguishedFolderIdNameType.drafts
' Add folders to the request.
findItemRequest.ParentFolderIds = folderIDArray
Try
' Send the request and get the response.
Dim findItemResponse As FindItemResponseType = esb.FindItem( _
findItemRequest)
' Get the response messages.
Dim rmta As ResponseMessageType() = _
findItemResponse.ResponseMessages.Items
For Each rmt As ResponseMessageType In rmta
' Cast to the correct response message type.
If DirectCast(rmt, FindItemResponseMessageType).ResponseClass = _
ResponseClassType.Success Then
'ReDim Maildetails.Absender(UBound(Maildetails.Absender) +
' 1)
ReDim Maildetails.Absender(UBound(Maildetails.Empfänger) + _
1)
ReDim Maildetails.Absender(UBound(Maildetails.HTMLText) + 1)
ReDim Maildetails.Absender(UBound(Maildetails.ID) + 1)
For a = 0 To DirectCast(DirectCast(DirectCast(DirectCast( _
rmt, EWSUtil.EWS.FindItemResponseMessageType).RootFolder, _
EWSUtil.EWS.FindItemParentType).Item, System.Object), _
EWSUtil.EWS.ArrayOfRealItemsType).Items.Length
'Maildetails.Absender = DirectCast(DirectCast(
' DirectCast(DirectCast(
' rmt,EWSUtil.EWS.FindItemResponseMessageType).RootFold
' er,EWSUtil.EWS.FindItemParentType).Item,System.Object
' ),EWSUtil.EWS.ArrayOfRealItemsType).Items(0).
Maildetails.Empfänger = DirectCast(DirectCast( _
DirectCast(DirectCast(rmt, _
EWSUtil.EWS.FindItemResponseMessageType).RootFolder, _
EWSUtil.EWS.FindItemParentType).Item, System.Object), _
EWSUtil.EWS.ArrayOfRealItemsType).Items(0).DisplayTo
Maildetails.HTMLText = DirectCast(DirectCast(DirectCast( _
DirectCast(rmt, _
EWSUtil.EWS.FindItemResponseMessageType).RootFolder, _
EWSUtil.EWS.FindItemParentType).Item, System.Object), _
EWSUtil.EWS.ArrayOfRealItemsType).Items(0).Body
Maildetails.ID = DirectCast(DirectCast(DirectCast( _
DirectCast(rmt, _
EWSUtil.EWS.FindItemResponseMessageType).RootFolder, _
EWSUtil.EWS.FindItemParentType).Item, System.Object), _
EWSUtil.EWS.ArrayOfRealItemsType).Items( _
0).ItemId.Id.ToString
Next
Console.WriteLine("Item found")
End If
Next
Catch e As Exception
Console.WriteLine(e.Message)
End Try
End Sub Entweder mach ich das ziemlich umständlich oder es geht nicht anders -.-
Hat jemand einen Tip wie ich an die E-Mail komme die er gefunden hat?
Im "Original" würde er ja nur eine MEssage ausgeben auf der Konsole, aber an dieser Stelle hätte ich gern die Informationen aus der Mail.
Hoffe mir kann jemand helfen. |