In case the application is running on the same system where the pad is connected, we can access the signature pad by USB. But in case the application can´t have a direct access to the USB device, which is the case by RemoteDesktop and Citrix, we are forwarding all device requests to our Client Component. This Component will execute the requests and will send the results back to the server application.

We designed the remote component/layer in the way, that the main application don´t need to be modified in case the signature device is not local connected. Therefor we are tunnelling our device-communication between our SOPAD.dll (High Level Pad Comunication) and the SOPADCOM.dll (USB-Level), which means we are replacing the normal SOPADCOM.dll on the server with mediator version. This version takes care that the signature pad request will be forwarded to the client (by TCP or Citrix), where the local SOPADCOM.dll will perform the request.

Which Type of communication is used dependents by the DLL Version which is used from the Application. This means you need already to decide by the installation which communication type you want to use.


Because the Communication is controlled / initialize by the Server it means the remote components needs to know where the client system is. For TCP it means the server needs the client-IP and Port, these information needs to be configured inside the config.ini


You need to replace the IP address ( with the one of the client. Additional to the IP and the port there are settings for logging, but this should only be enabled in case of a problem.


There are 2 ways to use the config.ini, in case you place it into the same folder where the executable file of the application is, all users which are using the application will use the same TCP Settings. In case one of our products is being used, you need to place the INI in the installations folders next to the executable files (SOSigOffice.exe, SimpleSigner.exe). In case you used the DeviceAPI with your own Software you need to place the INI in the Folder of your own executable file. 

In case of an Multi-User System you should use the second option and place the config.ini into the user folder (C:\Users\<USER>\AppData\Roaming\StepOver\TCPIpExtension), on that way every user can have different TCP-Settings for the same Application.


You need to create this Config.ini by your own (create a textfile with the values below and save it under the name config.ini) or you can use the RDP-IPConfig tool. The Setup is not creating the config.ini.

RDP-IPConfig Tool

Because the Client-IP can be dynamic we created a small tool which can be used to set / update the config.ini. The tool will check the network status for open RDP Sessions to identify the Client-IP and will write it into the user folder. This means the tool works only when the TCP Session is active, for example you can start it automatically with the login of the user (or run it manually). This tool is optional and not required for the TCP Solution.


optional Parameters:




To set a different save path of the config.ini


config.ini which should be used as Basic (it will be copied to AppData)
-useExternalIPtry to read the external IP

Problems / Errors

In case the Server can´t find the Configuration file (config.ini) or establish the connection to the client. It will show the following message.

possible Problems


In case the Client is not activated there will an Demo Message each time when you start a signature.



Access Violation of BEX or APPCRASH occurrs on Windows Server 2008 R2 with Terminal Service.