Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Probleme beim Zugriff auf einen Exchangeserver
Snowwolf3000
myCSharp.de - Member

Avatar #avatar-3109.jpg


Dabei seit:
Beiträge: 142
Herkunft: Süddeutschland

Themenstarter:

Probleme beim Zugriff auf einen Exchangeserver

beantworten | zitieren | melden

Hallo,
also ich hatte eigentlich vor ein paar Daten direkt vom Exchange abzufragen. Ich bekomm aber die Verbindung zum Server irgendwie überhaupt nicht auf die Reihe. Zugreifen wollte ich eigentlich über CDO. Also hab ich mich mal an einen Beispiel von MSDN versucht, der mir irgenwelche Felder auflisten soll (http://support.microsoft.com/default.aspx?scid=kb;en-us;310203). Soweit komm ich allerdings garnicht. Immer wenn ich die Verbindung aufbauen will, bekomm ich das hier:


{"Der Provider kann nicht gefunden werden.  Möglicherweise ist er nicht richtig installiert worden." }

Und hier der dazugehörige Quellcode:


using System;

namespace Samples
{
	class Class1
	{
		static void Main(string[] args)
		{
			try
			{
				ADODB.Connection oCn = new ADODB.Connection();
				ADODB.Record oRc= new ADODB.Record();

				ADODB.Fields oFields;
				ADODB.Field oField;

				// TODO: Replace with your folder URL
				string sFdUrl = "http://MeinExchangeServer/exchange/MeinBenutzerName/Inbox";


				oCn.Provider = "exoledb.datasource";
				oCn.Open(sFdUrl, "MeinBenutzerName", "Passwort", -1); //ab hier geht es schief

				if(oCn.State == 1)
				{
					Console.WriteLine("Good Connection");
				}
				else
				{
					Console.WriteLine("Bad Connection");
				}

				oRc.Open(sFdUrl, oCn,
					ADODB.ConnectModeEnum.adModeReadWrite,
					ADODB.RecordCreateOptionsEnum.adFailIfNotExists,
					ADODB.RecordOpenOptionsEnum.adOpenSource,
					"", "");


				oFields = oRc.Fields;

				for(int i = 0; i < oFields.Count; i++)
				{
					oField = oFields[i];
					Console.WriteLine("{0} : {1}", oField.Name, oField.Value);
				}

				oRc.Close();
				oCn.Close();

				oCn = null;
				oRc = null;
				oFields = null;
				oField = null;
			}
			catch (Exception e)
			{
				Console.WriteLine("{0} Exception caught.", e);
			}
		}
	}


Kann mir jemand sagen was damit gemeint ist, das der Provider nicht richtig installiert ist?

Gruß,
Snowwolf
private Nachricht | Beiträge des Benutzers
_tb_
myCSharp.de - Member



Dabei seit:
Beiträge: 416

beantworten | zitieren | melden

Hallo,

das Problem hatte ich auch mal. Zumindest so ein ähnliches. Ich glaube das der "exoledb"-Treiber nur lokal auf dem Exchange-Server funktioniert. Es gibt da aber einen "Adapter"-treiber welcher intern über WebDAV kommuniziert. Leider hab ich jetzt nicht mehr gefunden wie der hieß.
private Nachricht | Beiträge des Benutzers
Snowwolf3000
myCSharp.de - Member

Avatar #avatar-3109.jpg


Dabei seit:
Beiträge: 142
Herkunft: Süddeutschland

Themenstarter:

beantworten | zitieren | melden

Ich denke ich hab gerade das gefunden was du meinst: MSDAIPP

cn.Provider = "msdaipp.dso"

http://support.microsoft.com/default.aspx?scid=kb;en-us;281899
Hörst sich von der Beschreibung ganz genauso an, wie das was du gemeint hast.
Würde es ja gerne gleich testen, aber ich hab daheim keinen Exchange stehen.

Allerdings eine Sache verwirrt mich doch etwas:
IMPORTANT: MSDAIPP is not supported for use with Collaboration Data Objects for
Exchange 2000 Server (CDOEX).

Also wenn ichs richtig verstanden hab benutzte ich damit garnicht CDOEX, sondern WEbDAV zur Kommunikation. Ich meine ist mir solange egal, wie ich nicht diese grausamen WebDAV-Befehle benutzen muss.
private Nachricht | Beiträge des Benutzers
_tb_
myCSharp.de - Member



Dabei seit:
Beiträge: 416

beantworten | zitieren | melden

Jaa, genau den meinte ich

und wie gesagt, der Treiber ist sozusagen ein Adapter. Du kommunizierst also nicht wirklich via CDO, aber du tust so.

Aber wieso ist WebDAV grausam?? Damit bekommt man wahrscheinlich mehr hin als mit CDO, nur das der .Net Support leider noch nicht sehr ausgereift ist(d.h. faktisch nicht vorhanden). Aber wenn man sich reingefunden hat gehts an sich.
private Nachricht | Beiträge des Benutzers
Snowwolf3000
myCSharp.de - Member

Avatar #avatar-3109.jpg


Dabei seit:
Beiträge: 142
Herkunft: Süddeutschland

Themenstarter:

beantworten | zitieren | melden

Was hab ich gegen WebDAV? Also dazu muss ich mal kurz erklären was ich machen soll:
Meine Aufgabe ist es einen Gruppenkalender zu erstellen (oder zu reparieren). Man soll damit also die Outlook Termine von mehreren Leuten gleichzeitig sehen, um Termine vernünftig koordinieren zu können.
Dazu gibt es auch schon ein Programm. Problem bei diesen ist eben das es einige Fehler aufweist. Das Teil ist in Java geschrieben, besteht nur aus WebDAV-Anweisungen die mindestens über 10 Zeilen gehen und <ironie> spitzenmäßig kommentiert sind</ironie>. Das es zu den Source keine Doku gibt versteht sich ja von selbst. Ach ja die Oberfläche ist mit QT, also c++ geschrieben.
Daher war jetzt mein erster Eindruck von WebDAV mal eher weniger positiv. Hat aber nichts zu bedeuten. Steh halt vor der Frage was ich mit den Teil mache.
private Nachricht | Beiträge des Benutzers