vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

ASP.NET, WebServices u. Remoting
EWS: Auslesen von verkn. Kalendern --> Woher bekomme ich die eMailAdressen? 
Autor: GambaJo
Datum: 20.10.10 09:11

Kurz zu meinem Vorhaben:´
Ich arbeite gerade an einem Dienst, der sich periodisch über EWS mit einem Exchange-Server verbinden, und dort alle geänderten Kalender-Termine auslesen soll (die werden dann in einer seperaten Datenbank abgelegt).

Was ich schon habe:
Der Dienst kann sich schon mit einem bestimmten User-Account am Exchange-Server anmelden, und die geänderten Termine des Acounts abrufen.

Mein Problem:
Die Idee war eigentlich, dass man auf dem Exchange-Server einen "Dummy"-User anlegt, der alle freigegebenen Kalender geöffnet (oder verknüpft hat), so dass diese kalender bei ihm in Outlook unter "Kalender von Personen" auftauchen. Auf dise Kalender hat der User nur Leserechte.

Ich kann diese "verknüpften" Kalender zwar über den Dienst auslesen, aber nur, wenn ich die eMail-Adresse des Postfachs kenne, dem der "verknüpfte" Kalender gehört.

z.B.
User1 hat die Adresse user1@test.de
User2 hat die Adresse user2@test.de
User2 hat seinen Kalender freigegeben, und User1 hat den freigegebenen kalender von User2 bei sich geöffnet.

Wenn ich beim Holen der Termine keine eMail-Adresse angebe, werden mir nur die Termine von User1 angezeigt. Wenn ich beim Holen der Termine die Adresse von User2 angbe, dann bekomme ich seine Termine.


Hier ein Code-Ausschnitt:
Private Function GetAppointmentsFromExchange(ByVal emailAdress As String, ByVal _
  StartZeit As Date) As List(Of GroupWareAppointment)
 
Dim lAppointmentList As New List(Of GroupWareAppointment)
 
'Neues Find-Request erzeugen
Dim lFindRequest As FindItemType = New FindItemType()
lFindRequest.Transversal = ItemQueryTransversalType.Shallow
lFindRequest.ItemShape = New ItemResponseShape()
lFindRequest.ItemShape.BaseShape = DefaultShapeNamesType.Default
 
'Zu durchsuchenden Ordner festlegen
Dim lCalendar As DistingishedFolderIdNameType.Calendar
lCalendar.Id = DistinguishedFolderNameType.calendar
 
'Wenn nicht der eigene Kalender, sondern ein freigegebener Kalender gelesen 
' werden soll
If Not (String.IsNullOrEmpty(emailAdress)) Then
   lCalendar.Mailbox = New EmailAddressType()
   lCalendar.Mailbox.EmailAddress = emailAdress
End If
lFindRequest.ParentFolderIds = New BaseFolderIdType() {lCalendar}
 
'hier kommt noch etwas unwichtiger Code
 
 
'Request an Server senden
Dim lResponse As FindItemResponseType = myExchangeServerAccess.FindItem( _
  lFindRequest)
 
'hier kommt noch etwas unwichtiger Code
 
 
Return lAppointmentList
End Function
Das funktioniert auch alles so weit ganz gut. Ich muss nur für jeden "verknüpften" Kalender die eMail-Adresse wissen, um sie in dem ode-Beispiel anzugeben. ich habe schon lange im Netz gesucht, aber anscheinend bietet EWS das nicht (scheint mir irgendwie nicht zu Ende gedacht zu sein).
Die einzige Lösung, die ich gefunden habe, war über ActiveDirectory zu suchen. Aber das wird nicht unbedingt klappen, da das ActiveDirectory losgelöst von Exchange ist.


Ich brauche also entweder eine Liste aller Exchange-user bzw. deren eMail-Adresse, oder eine andere Lösung auf freigegebene und verknüpfte kalender zu zugreifen.


Hat jemand einen Tipp?
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
EWS: Auslesen von verkn. Kalendern --> Woher bekomme ich ...4.095GambaJo20.10.10 09:11
Re: EWS: Auslesen von verkn. Kalendern --> Woher bekomme ...3.007GambaJo26.10.10 08:31

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel