# The neoVI API - Create your own software applications

**Overview**

The neoVI API provides a simple way to access the neoVI hardware with WIN32 development tools. This documentation describes how to use the API for custom applications. Each API has an example targeted for both C/C++, C#, and Visual Basic (VB). Operational examples are included for [Microsoft](http://www.microsoft.com) Visual C++, [National Instruments](http://www.ni.com) LabVIEW, [National Instruments](http://www.ni.com) LabWindows CVI, [Borland](http://www.borland.com) C++ Builder, [Borland](http://www.borland.com) Delphi, and [Microsoft](http://www.microsoft.com) Visual Basic.

Included with neoVI is the "icsneo40.dll" DLL. This DLL is a high performance multi-threaded DLL, capable of supporting many neoVI devices simultaneously. The DLL is through dynamic linkage.

For applications using neoVI and ValueCAN devices which do not use Windows, a [Linux interface](https://github.com/intrepidcs/libicsneo) is available. Intrepid Control Systems also has a [Github page](https://github.com/intrepidcs/) with APIs and projects for a verity of different system configurations. Code here can be built to fit the needed system.

**Getting Started**

To get started, review the [Basic Operation](https://docs.intrepidcs.com/neovi-api/basic-operation-intrepidcs-api) topic and the topics describing how to use the API in [Visual Basic .NET](https://docs.intrepidcs.com/neovi-api/basic-operation-intrepidcs-api/using-the-intrepidcs-api-in-visual-basic-intrepidcs-api), [Visual C++](https://docs.intrepidcs.com/neovi-api/basic-operation-intrepidcs-api/using-the-intrepidcs-api-in-visual-c++-intrepidcs-api), [Visual C#](https://docs.intrepidcs.com/neovi-api/basic-operation-intrepidcs-api/using-the-intrepidcs-api-in-c-intrepidcs-api), [LabWindows CVI](https://docs.intrepidcs.com/neovi-api/basic-operation-intrepidcs-api/using-the-intrepidcs-api-in-labwindows-cvi-intrepidcs-api), [LabVIEW](https://docs.intrepidcs.com/neovi-api/basic-operation-intrepidcs-api/using-the-api-in-labview-intrepidcs-api), [Borland C++ Builder](https://docs.intrepidcs.com/neovi-api/basic-operation-intrepidcs-api/using-the-intrepidcs-api-in-borland-c++-builder-intrepidcs-api), [Unity Engine](https://docs.intrepidcs.com/neovi-api/basic-operation-intrepidcs-api/unity3d-graphic-display-api), and [Borland Delphi](https://docs.intrepidcs.com/neovi-api/basic-operation-intrepidcs-api/using-the-intrepidcs-api-in-delphi-intrepidcs-api).


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.intrepidcs.com/neovi-api/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
