NumXL Software Development Kit (SDK) consists of files developers and their environments use to access NumXL application functionalities.
The functions of the NumXL SDK are implemented in separate dynamic (runtime) libraries (i.e., DLL) and exported (i.e., made available) as standard APIs. The SDK dynamic libraries and their dependencies are referred to here as the NumXL Runtime Environment (aka, NRE).
The NumXL SDK is a set of files needed by the development environment (e.g., compiler, linker) to build applications that invoke NumXL functions, such as NDK_ACF(.) or NDK_KDF(.).
The NumXL add-ins can be viewed as a custom application of the NumXL SDK.
The NumXL SDK files are prepared for native (un-managed) C/C++ development and can thus be used with any C/C++ development environment, such as Microsoft Visual Studio or Visual Code with CMake.
In addition, the NumXL SDK functions are available as standard C-APIs; for other development languages (e.g., VBA, .Net), developers can declare the API prototype in their applications and invoke it just as they would with any Windows API.
In future releases of the NumXL SDK, we plan to include API wrappers for other languages (e.g., VBA, doNet languages), making NumXL functions readily available for those development languages.
You may use any development environment. However, we recommend those with the NuGet package manager support, such as Microsoft Visual Studio (Community or Professional) or Microsoft Visual Code with NuGet package extension.
The NuGet package manager simplifies the addition of the SDK to your workspace by configuring your build and copying the NRE files.
Custom applications with calls to NumXL functions run on all desktop or server versions of Microsoft Windows (32 and 64-bit).
Furthermore, custom dynamic libraries (e.g., DLL or XLL) with calls to NumXL function(s) can be loaded on all versions of Microsoft desktop or server Windows OS. For full details, see the System Requirements section
The NumXL SDK consist of five(5) separate libraries:
Each library implements its configuration functions. You must call those functions in your custom application and pass the proper configuration parameters.
For more hands-on details, please check out the examples.