Pagina 1 van 1

C# Outlook/Exchange access

Geplaatst: 30 nov 2011, 21:43
door ubremoved_539
Ik ben op zoek hoe ik in C# (vanuit een pure console applicatie) Outlook (of zelfs rechtstreeks Exchange als dat kan) kan aanroepen om calender events uit te lezen en aan te passen. Iemand een linkje, want ondanks dat ik veel kan vinden lijkt niets mij te lukken tot op heden :-(

Re: C# Outlook/Exchange access

Geplaatst: 30 nov 2011, 21:46
door meon
Zonder me d'er in verdiept te hebben: vroeger kon je over HTTP dat via WebDAV doen; en anders MAPI-calls onderzoeken?
Ik zou in elk geval eerder naar communicatie met Exchange kijken dan met Outlook (want dan begint het eh: welk profiel, welke mailbox, welke kalender, NL/FR/EN?)

Re: C# Outlook/Exchange access

Geplaatst: 30 nov 2011, 22:05
door raf1

Re: C# Outlook/Exchange access

Geplaatst: 30 nov 2011, 23:15
door dupondje
Waarvoor zal je die App precies gebruiken?

Re: C# Outlook/Exchange access

Geplaatst: 30 nov 2011, 23:42
door ubremoved_539
Bedankt voor de tips... dit doet het prima;

Code: Selecteer alles

using System;

// Download Exchange Web Services Managed API from http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=13480
// Add reference to installed DLL
// Set project properties to target framework ".NET Framework 4"
using Microsoft.Exchange.WebServices.Data;

namespace ExchangeTest
{
    class Program
    {
        static void Main(string[] args)
        {
            ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010_SP1);
            service.Credentials = new WebCredentials("user", "password", "domain");
            service.Url = new Uri("https://owa.mydomain.be/EWS/Exchange.asmx");

            Appointment appointment = new Appointment(service);
            appointment.Subject = "Dentist Appointment";
            appointment.Body = "The appointment is with Dr. Smith.";
            appointment.Start = new DateTime(2011, 12, 1, 15, 00, 0);
            appointment.End = appointment.Start.AddHours(2);
            appointment.Save(SendInvitationsMode.SendToNone);
        }
    }
}
Nu ik een Windows Phone heb en m'n contacten uit Exchange gebruik had ik het vervelende issue dat verjaardagen hun alarmen afgaan om 15 minuten voor de "whole day event", maw. 23u45 (knap idee van Microsoft) alsook dat ik niet meer weet hoe oud de persoon zal worden. Bedoeling is dus een programma te schrijven dat verjaardagen gaat zoeken in m'n agenda en deze update (enkele uren ipv. 15min) alsook de tekst aanpast naar "Jantje is jarig (xx jaar)".

Re: C# Outlook/Exchange access

Geplaatst: 01 dec 2011, 00:03
door ubremoved_539
Nog wel een probleem met een all-day event via...

Code: Selecteer alles

appointment.Start = new DateTime(2011, 12, 1, 00, 00, 0);
appointment.End = appointment.Start.AddHours(24);
appointment.IsAllDayEvent = true;
... dat hij namelijk de kalender van de ganse dag vult (daar waar een verjaardag dit niet doet). Ik heb al diverse combinaties geprobeerd maar krijg tot op heden niet het gewenste effect.

Re: C# Outlook/Exchange access

Geplaatst: 03 dec 2011, 00:03
door ubremoved_539
Na wat zoek/prutswerk is het uiteindelijk gelukt :banana: