// speichert die URL des Servers public Cap_PortalLogik(int pin_OMPort, string pin_URL, int pin_Port) { _URL = pin_URL; _Port = pin_Port; SetzeRemotingPfad(); InitialisiereKanal(_Port); // hole Referenz auf das Remote-Objekt ObjektManager _ObjektManager = (Cdv_ObjMgr)Activator.GetObject( typeof(Cdv_ObjMgr), _URL + ":" + Convert.ToString(pin_OMPort) + "/" + "ObjektManager"); }
public static Cdv_ObjMgr HoleInstanz() { if(_omgr_ObjectManager == null) _omgr_ObjectManager = new Cdv_ObjMgr(); _i_ReferenzZaehler++; return(_omgr_ObjectManager); }
/// <summary> /// startet den Objektmanager /// </summary> private void InitialisiereObjektManager(int pin_Port) { // erzeuge ein neues Objekt vom Typ Cdv_ObjMgr _ObjectManager = Cdv_ObjMgr.HoleInstanz(); //Hier das Starten aller Verwaltungen anstoßen _ObjectManager.InitialisiereAlleVerwaltungen(); //Gebe alle nicht geladenen Verwaltungen an Nutzer weiter if(_ObjectManager.NichtGeladeneVerwaltungen != String.Empty) System.Windows.Forms.MessageBox.Show("Folgende Verwaltungen konnten nicht geladen werden:\n\n"+_ObjectManager.NichtGeladeneVerwaltungen+"\nVersichern Sie sich, dass die Datenbankverbindung korrekt ist und dass Sie auf eine gültige Einsatzdatenbank zugreifen. Sie können eine neue Einsatzdatenbank anlegen (Einsatz\\neuen Einsatz anlegen).\n Sie müssen den Server danach manuel neu starten (Server\\neu starten).\n\nOrt: pELS.Server.Cap_Server.InitialisiereObjektManager()","Fehler beim Laden des ObjektManagers",System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error); // publiziert dieses Objekt RemotingServices.Marshal( _ObjectManager, CKonstanten._str_ObjektManager_RemotePfad, typeof(Cdv_ObjMgr)); #region nur für Testzwecke // string connectionString = @"tcp://127.0.0.1:" + this._Serverkonfiguration.Port + "/" + CKonstanten._str_ObjektManager_RemotePfad; // Cdv_ObjMgr tmp = (Cdv_ObjMgr)Activator.GetObject( // typeof(Cdv_ObjMgr), // connectionString); // tmp.Einsaetze.HolenAlle(); #endregion }