Freigeben über


Verwenden von Remoteautomatisierung

In Standardautomatisierungsszenarien befinden sich sowohl Client als auch Server auf einem einzigen Computer und greifen gemeinsam auf die gleichen Ressourcen wie beispielsweise Speicher und Prozessor zu.

Automatisierung auf einem einzelnen Computer

Wenn Sie lokale Server zu Automatisierungszwecken erstellen, können Sie diese auch im Remotebetrieb bereitstellen. Die Remoteautomatisierung ermöglicht Ihnen die gleiche Flexibilität, Erweiterbarkeit und Leistungsfähigkeit wie bei der lokalen Automatisierung, lediglich innerhalb eines Netzwerks. Die Remoteautomatisierung ermöglicht

  • Servern, separate Ressourcen zu verwenden und
  • mehreren Benutzern, auf den gleichen Server zuzugreifen.

Sie können Server und lokalen Computer mit Hilfe des Remoteautomatisierungsverbindungen-Managers konfigurieren, der dann die Einstellungen in der Registrierung speichert. Der Automatisierungs-Manager des Servercomputers verwaltet die Automatisierung, so dass mit dem gleichen Code sowohl ein lokales als auch ein Remoteobjekt bearbeitet werden kann.

Remoteautomatisierung

Konfigurieren des Servers

Der erste Schritt beim Aktivieren der Remoteautomatisierung besteht darin, im Remoteautomatisierungsverbindungen-Manager den Servercomputer für den Clientzugriff zu konfigurieren.

So konfigurieren Sie den Remoteautomatisierungsserver

  1. Kopieren Sie die ausführbare Automatisierungsserverdatei (EXE) auf den Server, und führen Sie sie einmal zum Registrieren in der Windows-Registrierung aus.
  2. Führen Sie auf dem Servercomputer die Datei Racmgr32.exe, den Remoteautomatisierungsverbindungen-Manager, aus.
  3. Wählen Sie in der Liste COM Classes die gewünschte Klasse aus.
  4. Wählen Sie Allow Remote Creates by Key auf der Registerkarte Client Access.
  5. Stellen Sie auf der Registerkarte Client Access sicher, dass die Option Allow Remote Activation ausgewählt ist.

Die Optionen hierfür werden an späterer Stelle in diesem Kapitel erläutert. Nachdem Sie den Clientzugriff im Remoteautomatisierungsverbindungen-Manager aktiviert haben, führen Sie den Automation Manager (Autmgr32.exe) auf dem Servercomputer aus. Autmgr32.exe wird abhängig vom verwendeten Betriebssystem im Ordner System oder System32 installiert. Hierdurch werden Remoteautomatisierungsverbindungen von anderen Computern aktiviert.

Konfigurieren des Clients

Nach dem Einrichten des Servercomputers können Sie den lokalen Clientcomputer konfigurieren.

So konfigurieren Sie den lokalen Computer für Remoteautomatisierung

  1. Kopieren Sie die VBR-Datei, die zusammen mit dem Automatisierungsserver erstellt wurde, auf den Clientcomputer.

  2. Führen Sie CLIREG32 mit dem Namen der VBR-Datei aus. Geben Sie z. B. den folgenden Befehl an der Befehlseingabeaufforderung ein, wenn die Datei Myserver.vbr heißt:

    CLIREG32 MYSERVER.VBR
    
  3. Geben Sie im angezeigten Dialogfeld die Netzwerkadresse des Servercomputers ein, und wählen Sie ein Netzwerkprotokoll (normalerweise TCP/IP).

Optionen für System Security Policy Options

In der folgenden Tabelle finden Sie eine Beschreibung der Optionen im Bereich System Security Policy der Registerkarte Client Access des Remoteautomatisierungsverbindungen-Managers.

Name Wert1 Beschreibung
Disallow All Remote Creates 0 Verhindert das Erstellen von Objekten.
Allow Remote Creates by Key 2 Ein Objekt kann nur erstellt werden, wenn das Kontrollkästchen Allow Remote Activation aktiviert wurde. Hierdurch wird dessen CLSID in der Windows-Registrierung geändert, die nun folgende Subschlüsseleinstellung enthält: AllowRemoteActivation = Y
Allow Remote Creates by ACL 3 Ein Benutzer kann nur dann ein Objekt erstellen, wenn er durch einen Eintrag in der Liste "Zugriffssteuerung" für die CLSID in der Windows-Registrierung hierzu autorisiert ist. Dies gilt nur für Windows NT 4.0 oder höher.
Allow All Remote Creates 1 Ermöglicht das Erstellen von Objekten. Außerhalb der Entwicklungsumgebung nicht empfehlenswert.

1. 1In der Spalte "Wert" finden Sie die Voreinstellung für RemoteActivationPolicy des Automatisierungs-Managers in der Windows-Registrierung.

Verwenden von Authentifizierung bei der Remoteautomatisierung

Für Remoteautomatisierungsserver, die unter einem beliebigen Windows-Betriebssystem ausgeführt werden, stellen die Remoteprozeduraufrufe (Remote Procedure Calls, RPCs) die folgenden Authentifizierungsebenen bereit.

Name Value Beschreibung
Standard 0 Verwendet den Netzwerkstandard.
Keine (None) 1 Keine Authentifizierung.
Connect 2 Verbindung zum Server wurde authentifiziert.
Call 3 Eine Authentifizierung erfolgt nur zu Beginn jedes Remoteprozeduraufrufs, wenn die Anforderung beim Server eingeht. Trifft nicht auf verbindungsorientierte Protokollsequenzen zu (die mit dem Präfix "ncacn" beginnen).
Packet 4 Prüft, ob alle Daten vom erwarteten Client erhalten wurden.
Packet Integrity 5 Prüft, ob keine der zwischen Client und Server übertragenen Daten geändert wurden.
Packet Privacy 6 Prüft alle vorherigen Ebenen und verschlüsselt die Argumentwerte jedes Remoteprozeduraufrufs.

Die Notwendigkeit von RPC-Authentifizierung sollte sorgfältig geprüft werden, da sich eine Steigerung der RPC-Authentifizierungsebene negativ auf die Systemleistung auswirkt. Sie können für jede Klasse in Ihrem Automatisierungsserver eine Authentifizierungsebene festlegen, so dass leistungsmindernde Ebenen wie Verschlüsselung nicht auf die gesamte Komponente angewendet werden müssen.

So könnte beispielsweise ein als Remoteautomatisierungsserver implementierter Datendienst eine Logon-Klasse haben, die zur Übertragung der Benutzer- und Kennwortinformationen verwendet wird. Für diese Klasse könnte eine Paket-Privacy-Authentifizierung erforderlich sein. Andere vom Server verwendete Klassen kommen möglicherweise mit einer wesentlich niedrigeren Authentifizierungsebene aus.

Problembehandlung bei der Remoteautomatisierung

Nachstehend einige Lösungsmöglichkeiten, falls Probleme auftreten sollten:

Problem Aktion
OLE error code 0x800706d9: Es sind keine weiteren Endpunkte vom Endpunkt-Manager verfügbar. Stellen Sie sicher, dass der Automatisierungs-Manager auf dem Servercomputer ausgeführt wird und dass der Name des Servercomputers im Feld Network Address des Remoteautomatisierungsverbindungen-Managers korrekt eingegeben wurde.
Visual FoxPro: Die Anwendung wird nicht in der Remote Automation Manager OLE-Klassen-Liste angezeigt.
  1. Führen Sie Regedit.exe aus, um die Registrierung zu öffnen.
  2. Löschen Sie alle Verweise auf Microsoft Visual FoxPro.
  3. Führen Sie Visual FoxPro mit dem Befehlszeilenparameter -r aus:

    Vfp7.exe -r

Siehe auch

Erstellen von Automatisierungsservern | Steuern von Visual FoxPro über andere Anwendungen | Freigeben von Informationen und Hinzufügen von OLE | Einteilen von Objekten in untergeordnete Klassen | Verwenden von ActiveX-Steuerelementen