The IceLib SDK is available in 32-bit and 64-bit versions.

The IceLib .NET assemblies are not built as purely managed (AnyCPU) as they have dependencies on native DLLs. This requires both 32-bit and 64-bit versions so that each can have their respective 32-bit and 64-bit dependencies.

An example usage of the 64-bit IceLib SDK would be when a custom plugin to a 64-bit application requires the use of IceLib. For example, a SharePoint plugin that exposes queues and user statuses.

IceLib SDK 32-bit vs. 64-bit

There are two installs for the IceLib SDK (IceLibSDK.msi and IceLibSDK_64bit.msi) along with a merge module for each (IceLib_Redistributable.msm and IceLib_Redistributable_64bit.msm).

Each install includes ExampleApps and the IceLib .NET assemblies to implement IceLib as either 32-bit or 64-bit. The ExampleApps have their references pointing to the "\IceLib SDK\Bin" directory for the given install (32-bit or 64-bit).

When installing the 32-bit IceLib SDK on a 64-bit OS the default install path will be "Program Files (x86)\IceLib SDK" and the 64-bit install path will be "Program Files\IceLib SDK". This will allow both sets of assemblies to reside on the same machine.

The 64-bit IceLib SDK does not contain the AspIceLibClientDemo example application. The example application (and other ASP.NET applications) can be built with the 64-bit IceLib assemblies, however the resultant web page would not be able to be debugged via Visual Studio, since that built-in debugging capability is 32-bit-only. For the purpose of an IceLib example application, requiring utilization of an actual IIS environment is not ideal, so we have left this example out of the 64-bit IceLib SDK. The 32-bit IceLib SDK still contains it.