Laden...

Mehrfach-Start eines OPC-Servers verhindern

Erstellt von Lumbra vor 15 Jahren Letzter Beitrag vor 15 Jahren 986 Views
Lumbra Themenstarter:in
115 Beiträge seit 2008
vor 15 Jahren
Mehrfach-Start eines OPC-Servers verhindern

Hallo zusammen,

da bin ich mal wieder mit einer für mich ziemlich kniffligen Geschichte.

Ich bin gerade einen OPC-Server am programmieren und habe den bisher als kleine Windows-Anwendung als OutProc realisiert (mit der Softing .Net-Toolbox).

Wenn ich den Server im Debugger starte, kann ich mich mit beliebige vielen Clients mit ihm verbinden. Sobald er jedoch durch einen Client gestartet wird, kann nur dieser eine auf den Server zugreifen. Jeder andere Client startet eine neue Instanz des OPC-Servers. DCOM ist aber soweit nach den Vorgaben von Softing eingerichtet. Daran kann es eigentlich nicht liegen.

Die Toolbox selbst liefert keine Methode oder Klasse, die das Verbindungsverhalten steuert.

Womit kann ich das überhaupt beeinflussen?

Grüße,
der Michael

Lumbra Themenstarter:in
115 Beiträge seit 2008
vor 15 Jahren

Ok, ich merke gerade, dass ich es falsch beschrieben habe was ich vorhabe.

Für das beschriebene Problem habe ich allerdings in der MSDN unter MSDN: RegistrationServices.RegisterTypeForComClients Method die Lösung gefunden.

Das was ich aber eigentlich wollte, habe ich nicht damit hinbekommen.

Ich muss folgendes machen:

  1. Ein OPC-Client verbindet sich mit dem Server
  2. Der OPC-Server wird durch den Client gestartet.
  3. Der Client verliert (warum auch immer, z.B. Neustart der Client-Anwendung) die Verbindung
  4. Der Server wird NICHT beendet
  5. Der OPC-Client verbindet sich mit der bestehenden Instanz des Servers.

Jemand eine Idee, wie sowas geht?

Grüße,
der Michael

Lumbra Themenstarter:in
115 Beiträge seit 2008
vor 15 Jahren

Hallo zusammen,

mittlerweile hab ich einen Thread gefunden der unter Umständen für mich einen Lösungsansatz beinhalten könnte: mehrere Programminstanzen verhindern?

Die Frage die sich mir jetzt nur noch stellt ist, ob man über ein Mutex auch realisieren kann, dass ein OPC-Client auf eine bestehende Server-Instanz zugreift. Auch, wenn noch kein anderer OPC-Client mit diesem verbunden ist.

Edit: Ich sollte vielleicht noch anmerken, dass die Server-Client-Verbindung über COM/DCOM aufgebaut wird.

Grüße,
der Michael