# NAG C Library Associated Information

## Windows DLL support for various environments

The Windows DLL versions of the C Library are callable from many different environments including:

• Microsoft Visual C++
• Microsoft Visual Basic .NET
• Microsoft Excel
• Java
• C#

Projects illustrating the use of the DLLs from the above environments are presented here:

It is expected that, as experience is gained in new environments, further advice on the interoperability of the NAG C Library Windows DLLs will become available and we intend to publish updates to the advice in these documents from time to time.

## Calling NAG C Library (DLL) from C#

Microsoft has provided techniques for calling non-managed code from C#, and .NET generally, summarized in three key concepts: attributes, assembly, and marshalling. Using these concepts it is possible to call the vast majority of NAG C Library functions fairly easily. Details for the C Library Mark 26 are given here.

You may also be interested in the NAG Library for .NET – see here for details.

## Calling the NAG C Library from Java

For access to NAG routines from Java, we recommend using the NAG Library for Java. However, it is possible to call the NAG C Library DLLs or shareable libraries from Java as described in this Technical Report.

We show examples using Java running on both UNIX and Microsoft Windows platforms. The techniques described are also applicable to other libraries, such as the NAG Fortran Library.

## Calling the NAG C Library from C++

Learn more about calling the NAG C Library from C++ in this blog post 'C++ Wrappers for the NAG C Library'.