A Remote Adapter can be launched in two ways:
  • through the supplied DotNetServer_N2.exe, as shown in DOCS-SDKs\sdk_adapter_dotnet\examples\Remote_StockListD emo_Adapters\Deployment\Deployment_DotNet_Server;
  • by writing a custom launcher, as shown in DOCS-SDKs\sdk_adapter_dotnet\examples\Remote_StockListD emo_Adapters\Deployment\Deployment_DotNet_Server(c ustom); examples, of custom launcher code are shown both in DOCS-SDKs\sdk_adapter_dotnet\examples\Remote_StockListD emo_Adapters\src_standalone_launcher and in the online tutorial.

The latter method allows you to add any kind of customization.
In your case, the onStart callback would replace the main method of the example code.
The call to the Start method on the DataProviderServer instance (actually triggered by the main method) in turn triggers the Init call on the IDataProvider instance.

About launching Remote Adapters by the Server itself, this can be achieved by customizing the supplied Proxy Adapters.
By wrapping the com.lightstreamer.adapters.remote.data.NetworkedDa taProvider (or RobustNetworkedDataProvider) class, you could hook the init method and launch the Remote Adapter there,
with any configuration parameters specified within the <data_provider> element in adapters.xml available.

By the way, note that the com.lightstreamer.adapters.remote.data.PipedDataPr ovider actually runs the Remote Adapter on the local machine, but this technique is not advised for production use.