libicsneo/examples/csharp/README.md

2.4 KiB

libicsneo C# Example

This is an example console application that uses the icsneocsharp library to control an Intrepid Control Systems hardware device.

Cloning

This will create a copy of the repository on your local machine.

Run:

git clone https://github.com/intrepidcs/libicsneo-examples --recursive

Alternatively, if you cloned without the --recursive flag, you must enter the libicsneo-examples folder and run the following:

git submodule update --recursive --init

If you haven't done this, third-party/libicsneo will be empty and you won't be able to build!

Windows using Visual Studio 2017+

Building the DLLs

icsneoc

First, we are going to build the icsneoc library into a .dll file that is used by the C# wrapper to access the library functions.

  1. Launch Visual Studio and open the libicsneo-examples folder.
  2. Choose File->Open->Cmake...
  3. Navigate to third-party/libicsneo and select the CMakeLists.txt there.
  4. Visual Studio will process the CMake project.
  5. Select Build->Rebuild All
  6. Visual Studio will generate the icsneoc.dll file, which can then be found by selecting Project->Cmake Cache (x64-Debug Only)->Open in Explorer. If the file cannot be found, search in libicsneo-examples/third-party/libicsneo/out/build/x64-Debug and double-check that the build succeeded in step 5.
  7. Move the icsneoc.dll file to the /C/Windows/System32 folder.

icsneocsharp

Next, we are going to build the wrapper functions into a .dll file that is used to access the library functions in C#.

  1. Launch a terminal window and change directories into libicsneo-examples/libicsneocsharp-example, then create a build directory by running mkdir -p build
  2. Enter the build directory with cd build
  3. Run cmake ..
  4. Run cmake --build .
  5. The icsneocsharp.dll file will be generated in libicsneo-examples/libicsneocsharp-example/build/Debug
  6. Move the icsneocsharp.dll file to the /C/Windows/System32 folder.

Building the example program

  1. Choose File->Open->Project/Solution...
  2. Navigate to libicsneo-examples/libicsneocsharp-example and select the libicsneocsharp-example.sln there.
  3. Visual Studio will process the project.
  4. Select Build->Rebuild Solution
  5. Click on the dropdown arrow attached to the green play button (labelled "Select Startup Item") and select libicsneocsharp-example
  6. Click on the green play button to run the example.