Microsoft SDK for Java

Raw Native Interface Structures

Raw native interface (RNI) uses certain structures to access Java arrays and wrap native code for the Microsoft virtual machine (Microsoft VM).

The ThreadEntryFrame and GCFrame structures are used in several RNI functions, but are not manipulated directly by the user.

The ClassArrayOf* structures all share the same architecture. The MSReserved field is reserved for the Microsoft VM. Each structure contains a length and body field. The body field is a variable length array, with the array's length stored in the length field.

Structures that handle strings and arrays of strings have different architecture because the Microsoft VM handles strings differently in certain situations.

The following structures are defined in the Native.h header file.

ArrayOfSomething Serves as a base structure from which others that access Java arrays are derived.
C2JMethodHookInfo Information structure for COM-to-Java custom method hook.
ClassArrayOfArray Accesses Java two-dimensional arrays from native RNI code.
ClassArrayOfByte Accesses Java arrays of bytes from native RNI code.
ClassArrayOfChar Accesses Java arrays of characters from native RNI code.
ClassArrayOfDouble Accesses Java arrays of doubles from native RNI code.
ClassArrayOfFloat Accesses Java arrays of floats from native RNI code.
ClassArrayOfInt Accesses Java arrays of integers from native RNI code.
ClassArrayOfLong Accesses Java arrays of long type primitives from native RNI code.
ClassArrayOfObject Accesses Java arrays of Objects from native RNI code.
ClassArrayOfShort Accesses Java arrays of short type primitives from native RNI code.
ClassArrayOfString Accesses Java arrays of String types from native RNI code.
GCFrame Wraps a garbage collection frame from native RNI code.
J2CMethodHookInfo Information structure for Java-to-COM custom method hook.
ThreadEntryFrame Used in the PrepareThreadForJava and UnprepareThreadForJava functions.

© 1999 Microsoft Corporation. All rights reserved. Terms of use.