API Updates for 64-bit TestStand
- Updated2025-07-23
- 1 minute(s) read
Some TestStand 2013 or earlier API methods and properties represents pointers or pointer-sized values as 32-bit integral data types, usually long, which does not work for 64-bit applications. The following table lists obsolete properties and methods and the corresponding TestStand properties and methods that support 32-bit applications and 64-bit applications.
| Class | Obsolete (32-bit only) Property or Method | 32-bit TestStand and 64-bit TestStand Property or Method |
|---|---|---|
| Engine | LargeImageList | LargeImageListEx |
| Engine | RegisterUIMessageCallback | RegisterUIMessageCallbackEx |
| Engine | SmallImageList | SmallImageListEx |
| Station Options | DefaultCPUAffinityForThreads | DefaultCPUAffinityForThreadsEx |
| InstrSession | CloseFunction | CloseFunctionEx |
| InstrSession | GetHandle | GetHandleEx |
| Class | Obsolete (32-bit only) Property or Method | 32-bit TestStand and 64-bit TestStand Property or Method |
|---|---|---|
| Engine | LargeImageList | LargeImageListEx |
| Engine | RegisterUIMessageCallback | RegisterUIMessageCallbackEx |
| Engine | SmallImageList | SmallImageListEx |
| Station Options | DefaultCPUAffinityForThreads | DefaultCPUAffinityForThreadsEx |
| InstrSession | CloseFunction | CloseFunctionEx |
| InstrSession | GetHandle | GetHandleEx |
32-bit TestStand supports the obsolete properties and methods for compatibility, but NI recommends using the obsolete API only when you migrate existing 32-bit TestStand systems to 32-bit TestStand. For TestStand 2014 or later applications and for updates to existing systems, use the TestStand API regardless of current requirements for 64-bit support. The obsolete properties and methods return errors when invoked in 64-bit TestStand.
In addition, the following new methods support attaching user-defined pointer-sized values to sessions and function similarly to the existing InstrSession.AttachLong and InstrSession.GetLong methods:
- InstrSession.AttachLongPtr
- InstrSession.GetLongPtr
Continue to use the InstrSession.AttachLong and InstrSession.GetLong methods with values that are 32-bits regardless of architecture.