Server installation and start-up
Before the OPC client can be started, it must be ensured that:
-
each server used is locally installed and registered (when it is being started locally) or
-
remotely installed, and remotely registered (when it is being started remotely).
-
When a remote server is used, the DCOM security settings must also be set correctly (see DCOM Settings for Remote Servers).
NOTE that the DCOM settings are impacted due to the changes in Microsoft Windows XP Service Pack 2. When Service Pack 2 is installed with its default configuration settings, OPC communication via DCOM will not work. To use OPC via DCOM you have to add the OPC Clients and Servers to the exception list of the windows fire wall. Also security enhancements were made to DCOM and the default Launch and Access permissions dialogs were modified to allow the user to configure ”limits” on the permissions given to applications using DCOM. Secondly, for each user now defined in the Launch and Access permissions, both local and remote access can be explicitly defined. (source: White paper: "Using OPC via DCOM with Microsoft Windows XP Service Pack 2 Version 1.10" /Karl-Heinz Deiretsbacher, Siemens AG, Jim Luth, ICONICS, Inc.,OPC Foundation Technical Director, Rashesh Mody, Invensys/Wonderware, OPC Foundation Chief Architect Kurt T Haus, Advosol Inc. Please refer to this white paper when using Service Pack 2.
The registration should be done automatically when the server is installed. If this is not the case, the server can be registered via
Server.exe /RegServer
if it is a local server (.exe). If it is an inproc server (.dll)
RegSvr32 Server.dll
can be used.
The servers, defined by the ProgID in the config file, automatically start during startup. For starting a server locally, the program tries to run the server "inproc", i.e. dll. Only with a failure the client will locally start the server, that means in a separate process.
If the server is to be started remotely, a path to the remote host must be given (see Configuration file).
Provided at least one server can be started, the client also powers up. If none of the specified servers can be started, the client's start-up is aborted.
If both the .exe (local) and .dll (inproc) versions of a server are installed on a computer and registered with an entry in the registry, then the inproc version is always started (for performance reasons). If this is undesirable, the inproc version (the dll) should be deregistered (using RegSvr32 Server .dll /u).
If the server is already running in a local version (e.g. because it was configured, or because another client has already connected to it), a new server is not started: the client makes a connection to the server that is running.
ProgID of several servers
Server | ProgID |
---|---|
Moeller PLC Type: PS4 | "Moeller.S40-OPC-DataAccess.2" |
Simatic NET | "OPC.simaticNET" |
Schneider OFS | "Schneider-Aut.OFS.2" |