Creating a Driver to Move a Device with a Client TCP Connection

Hello,

I am trying to create a driver to move a device using a client TCP connection. I am using the DemoDriver project as a template to develop this driver.

For this, I had to change the connection type from TCP to WCF because, in the example, DemoDriver uses a WCF connection to communicate with the DemoDriverDevices simulator. On the other hand, in the DemoContainer file, I have removed all the instances that I do not need (such as the stream instance).

I have doubts about the DemoConnectionManager file. In this file, the declared connection expects to receive a series of parameters that, in the case of my device, do not exist, and other necessary parameters are missing… Since it inherits from the container class, these parameters are not modifiable. How can I manage this parameter input so that they can be configured in the add hardware menu in the Milestone XProtect Manager?

I have managed to deploy the driver in the development environment by doing the following:

  1. Stop the Recording Server Service.
  2. From the project build output, copy the files DemoDriver.def and DemoDriver.dll (and DemoDriver.pdb if debugging) to %ProgramFiles%\Milestone\MIPDrivers\DemoDriver.
  3. Start the Recording Server Service.

In the production environment, following the same steps, I cannot get the driver to appear :frowning:.

Do you know why this might be happening? The only difference between the production and development environments is that in the development environment, the Management Client and the Recording Server Service are on the same machine, while in the production environment they are on different machines.

Thank you for everything!

The communication in the DemoDriver is only there for demonstration purpose, you should clear that. We recommend that you use the template instead of the sample as a beginning for your driver.

https://doc.developer.milestonesys.com/html/index.html?base=gettingstarted/intro_driverframework.html&tree=tree_search.html?search=template

You might not have the templates, please find here a small description of how to get them:

https://doc.milestonesys.com/sysarch/pdf/latest/en-US/MilestoneMIPSDK_GettingStartedGuide_en-US.pdf