Skip to main content
.NETFramework4.8net7.0net8.0net9.0

Drop-in replacement for xiAPI (net48 + net8/net9). No native binaries. Works cross platform.

Published
Oct 14, 2025
1y ago
Total Downloads
669
669

Install

dotnet add package xiAPI.NET.CrossPlatform --version 1.1.0
ProductVersions
.NET
net7.0net8.0net9.0
Other
.NETFramework4.8

README

xiApi.NET.CrossPlatform

A drop-in replacement package that works as XIMEA’s xiAPI .NET but works smoothly across platforms and target frameworks.

  • âś… Adds a cross-platform unmanaged resolver so XIMEA’s hard-coded xiapi64.dll name also works on Linux/macOS (maps to libm3api.so / libm3api.dylib)
  • âś… Zero code changes in your app — just install the package

Why? XIMEA’s .NET wrapper P/Invokes xiapi64.dll. That name is fine on Windows, but not on Linux/macOS where the native library is named differently. This package patches that gap.


Install

dotnet add package xiApi.NET.CrossPlatform

Or via NuGet Package Manager.

The package replaces XIMEA’s managed wrapper. You don’t need to add a separate reference to xiApi.NETX64.dll.


Usage

No need to setup something, just use XIMEA’s API as usual:

using xiApi;

unsafe
{
    int num;
    var err = ximeaApi.xiGetNumberDevices(&num);
    if (err != 0) throw new InvalidOperationException($"xiGetNumberDevices error {err}");
}

Deployment notes

Native library location

On Windows, the vendor name matches, so the OS loader finds xiapi64.dll normally (either from PATH or app folder).

On Linux/macOS, make sure the native library from the XIMEA SDK can be found. The resolver tries, in order:

  1. System/default search (ldconfig paths on Linux, DYLD on macOS)
  2. App directory (AppContext.BaseDirectory)

License

  • Resolver code: MIT (this package).
  • XIMEA managed/native libraries: subject to XIMEA’s licenses. Ensure you have rights to redistribute/use them in your environment.

Changes from Previous Version

No structural changes between v1.0.0 and v1.1.0.

Adoption Assessment

Assess this package against its supported frameworks, license, maintenance signals and dependency graph before making it a project standard.

Compatibility metadata lists 4 target frameworks; confirm the exact target used by your application.

Related Guides & Workflows

Learn how to evaluate, integrate, or audit this package in your .NET project.