Forum: PC-Programmierung Outlook Kalender "Active Sync" selber programmieren.


von Martin K. (maart)


Lesenswert?

Ich möchte zwei Outlook 2007 Kalender über das LAN synchronisieren.
Dazu möchte ich auf beiden Rechnern ein Visual Studio C#-Programm laufen 
lassen, also .NET (dieses will ich selber schreiben, wenn es eine 
einfache kostenlose Variante gibt: ok, kann ich mich auch mit 
anfreunden)
Wie die Daten später übertragen werde, ist erst mal egal, ich stehe ja 
noch am Anfang.

Wie geht man jetzt vor?
Die Startsynchronisation ist in meinem Fall ganz einfach: Zum Beginn 
sind beide Rechner synchron, dies erreiche ich über den kompletten 
Kalenderexport als Datei auf dem PC und dann durch den Import auf dem 
Netbook.

Hier beginnt jetzt mein Problem:
Wie kann ich später herausfinden, welcher Kalendereintrag auf dem PC dem 
entsprechendem Eintrag auf dem Netbook zugeordnet ist?
Wenn jetzt auf einem Rechner ein neuer Eintrag erstellt wurde, so ist 
die "Creation Time" und die "LastModificationTime" identisch. Gut, 
dieser Fall ist dann einfach: Jetzt kann ich nach einem exakt 
übereinstimmenden Element auf dem anderen Rechner suchen.

Was aber, wenn z.B. die Startzeit UND der z.B. Betreff geändert wurden?

von Peter II (Gast)


Lesenswert?

Martin Kreiner schrieb:
> Was aber, wenn z.B. die Startzeit UND der z.B. Betreff geändert wurden?

jedes Objekt hat eine ID - dieses verwendet man zum synchen.

schau mal ob du die Spezifikation für AktivSync im netz findest, dort 
sollte soetwas drin stehen.

von Martin K. (maart)


Lesenswert?

Ah, ich glaube ich weiß langsam, wie der Hase läuft:
Zu jedem Objekt gibt es wohl eine eindeutige EntryID, jetzt muss ich mir 
also zu Beginn eine Tabelle anlegen, in der die zwei korrespondierenden 
IDs verknüpft werden.

von Peter II (Gast)


Lesenswert?

Martin Kreiner schrieb:
> jetzt muss ich mir
> also zu Beginn eine Tabelle anlegen, in der die zwei korrespondierenden
> IDs verknüpft werden.

warum verknüpfen? Nach dem Synchen solltest du in beiden system die 
gleichen IDs haben.

von Gerd E. (robberknight)


Lesenswert?

Was Du da planst ist in etwa sowas hier nachzubauen:
http://www.olfolders.com/

Wenn Du Dir die Details anschaust wirst Du merken, daß das zwar 
theoretisch alles einfach und klar aussieht, in der Praxis aber ne Menge 
schief gehen kann. Daher funktioniert meiner Erfahrung nach auch das 
Olfolders nur meistens, aber nicht immer. Irgendein Termin wird manchmal 
vergessen oder verdoppelt etc.

Wirklich gelöst bekommst Du das nur wenn Du einen richtigen, eigenen 
MAPI-Storeprovider programmierst. Der bekommt dann alle Änderungen durch 
Outlook mit und kann die Synchronisieren. Aber auch da gibt es jede 
Menge Fallstricke.

Hier den Begriff "Active Sync" zu verwenden wird übrigens nur zur 
Verwirrung führen: das ActiveSync-Protokoll was die meisten Smartphones 
zur Synchronisation sprechen ist was vollkommen anderes. Outlook selbst 
kann das auch nicht sprechen. Das kann nur der Exchange.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.