Re: Remoting , Wann werden Objekte bei einem Singleton auf dem Host zerstört

Tech Tip: Click here to run a free scan for Windows Errors and optimize PC performance



Hallo Peter,

erstmal Danke das Du dich meines Problems angenommen hast

> die Darstellung ist etwas unklar. Wie erzeugst du auf dem Server das
> "Remotable Objekt"? Wie arbeitet das Objekt mit der Datenbank?

Die Datenzugriffsklasse auf dem Server muss folgende Schnittstelle
implementieren
Public Interface DBQuery

Sub DBAnmeldung(ByVal DBServer$, ByVal DBName$, ByVal DBUser$, ByVal
DBPass$)

Function DBAbfrage(ByVal Abfr As String) As DataSet

Function FehlerAusgabe() As String

End Interface

Der Host selbst wird über eine Configurationsdatei an die
Datenzugriffsklasse gebunden. Die Datei sieht so aus

<configuration>
<system.runtime.remoting>
<application>
<service>
<wellknown
type="RemoteDBService.DBService,RemoteDBService"
objectUri="DBService"
mode="Singleton"
/>
</service>
<channels>
<channel ref="tcp" port="8000">
<serverProviders>
<formatter ref="binary"/>
</serverProviders>
</channel>
</channels>
</application>
</system.runtime.remoting>
</configuration>

>
> Wie liefert der Server das DataSet zurück? Als Return-Objekt der
> aufgerufenen Methode des remote instanzierten Objektes?
>

Ja über die Methode "DBAbfrage"

>
> Wie gibst du denn die Objekte frei?
>
Und hier liegt wahrscheinlich der Hund begraben. Ich weiss einfach nicht
wie ich das Objekt wieder freigeben kann. In der Datenzugriffsklasse wird
die Connection geschlossen, das instanzierte Objekt ist doch aber die
Datenzugriffsklasse und wie kann ich so eine Klasse zerstören. Muss ich das
vom Client aus in einer Art Empfangsbestätigung initiierrn indem ich die
Schnittstelle um eine Methode "DBObjDestroy" erweitere ?

>
> Da müsste man die Aufruftechnologie kennen.
>
Der Ablauf ist folgender

Die Hostanwendung läuft auf dem Server permanent
Der Client implementiert beim Start die Schnittstelle
RemotingConfiguration.Configure("Client.exe.config")
obj = Activator.GetObject(GetType(DBQuery),
System.Configuration.ConfigurationSettings.AppSettings("RemoteObjUrl"))
mit
Dim RemObj As DBQuery
RemObj = CType(obj, DBQuery)
wird eine Instanz erzeugt.
Der Client setzt die Anmeldeinformationen an den Host über die Methode
DBAnmeldung ab
Dann setzt der Client den Select uber die Methode DBAbfrage ab und erhält im
Ergebnis ein Dataset.

Vielleicht kannst Du mir da weiterhelfen

Danke

Klaus






.



Relevant Pages

  • Konfiguration der Netzwerkeinstellungen
    ... Auf dem Server ist jetzt mit der ersten CD-ROM das Serverbetriebssystem installiert. ... Die Premium-Technologies und der SBS sind noch nicht drauf. ... Das ist die IP-Adresse, unter die der SBS im internen Netzwerk erreichbar ist. ... -Die externe Schnittstelle sollte im gleichen Subnetz liegen wie die internet Schnittstelle der Hardware-Firewall oder des DSL-Routers. ...
    (microsoft.public.de.german.backoffice.smallbiz)
  • Re: Access2SQL Performance Probleme
    ... >> SQL Server Schnittstelle wie bcp / BULK INSERT. ... die bereits in ODBC/DB-Library als bcp API existierte ...
    (microsoft.public.de.sqlserver)
  • Re: Routing und RAS verhindert AD-Replikation
    ... Server nur eine Netzwerkkarte, dann wähle dort die Option. ... Andernfalls wird PPTP/L2TP an die einzige LAN-Verbindung gebunden und ... Port 1701. ... an diese einzige Schnittstelle gebunden und nicht ausschließlich, ...
    (microsoft.public.de.german.win2000.active_directory)
  • Schnittstelle MS SQL -> Oracle auf Itaium
    ... Itanium installiert und wollen von diesem auf einen Oracle Server ... SQL*Plus können wir auch darauf zugreifen. ... Die von Oracle zur Verfügung gestellte OLE DB Schnittstelle funktioniert ... leider nicht und ich finde auch keine "OLE DB for ODBC" Schnittstelle. ...
    (microsoft.public.de.sqlserver)