Package com.sun.jna.platform.win32

# Class Ntifs.SymbolicLinkReparseBuffer

java.lang.Object
com.sun.jna.Structure
com.sun.jna.platform.win32.Ntifs.SymbolicLinkReparseBuffer

Direct Known Subclasses:
  `Ntifs.SymbolicLinkReparseBuffer.ByReference`

Enclosing interface:
  Ntifs

@FieldOrder({"SubstituteNameOffset","SubstituteNameLength","PrintNameOffset","PrintNameLength","Flags","PathBuffer"}) public static class Ntifs.SymbolicLinkReparseBuffer extends Structure

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`Ntifs.SymbolicLinkReparseBuffer.ByReference`

## Nested classes/interfaces inherited from class com.sun.jna.Structure

`Structure.ByValue, Structure.FieldOrder, Structure.StructField`

## Field Summary

Fields
Modifier and Type
Field
Description
`int`
`Flags`
Used to indicate if the given symbolic link is an absolute or relative symbolic link.
`char[]`
`PathBuffer`
First character of the path string.
`short`
`PrintNameLength`
Length, in bytes, of the print name string.
`short`
`PrintNameOffset`
Offset, in bytes, of the print name string in the PathBuffer array.
`short`
`SubstituteNameLength`
Length, in bytes, of the substitute name string.
`short`
`SubstituteNameOffset`
Offset, in bytes, of the substitute name string in the PathBuffer array.

### Fields inherited from class com.sun.jna.Structure

`ALIGN_DEFAULT, ALIGN_GNUC, ALIGN_MSVC, ALIGN_NONE, CALCULATE_SIZE`

## Constructor Summary

Constructors
Constructor
Description
`SymbolicLinkReparseBuffer()`
`SymbolicLinkReparseBuffer(short SubstituteNameOffset, short SubstituteNameLength, short PrintNameOffset, short PrintNameLength, int Flags, String PathBuffer)`
`SymbolicLinkReparseBuffer(Pointer memory)`
`SymbolicLinkReparseBuffer(String substituteName, String printName, int Flags)`

## Method Summary

Modifier and Type
Method
Description
`String`
`getPrintName()`
`String`
`getSubstituteName()`
`static int`
`sizeOf()`

### Methods inherited from class com.sun.jna.Structure

`allocateMemory, allocateMemory, autoAllocate, autoRead, autoRead, autoWrite, autoWrite, cacheTypeInfo, calculateSize, clear, createFieldsOrder, createFieldsOrder, createFieldsOrder, createFieldsOrder, dataEquals, dataEquals, ensureAllocated, equals, fieldOffset, getAutoRead, getAutoWrite, getFieldList, getFieldOrder, getFields, getNativeAlignment, getNativeSize, getNativeSize, getPointer, getStringEncoding, getStructAlignment, hashCode, newInstance, newInstance, read, readField, readField, setAlignType, setAutoRead, setAutoSynch, setAutoWrite, setStringEncoding, size, sortFields, toArray, toArray, toString, toString, useMemory, useMemory, write, writeField, writeField, writeField`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

## Field Details

### SubstituteNameOffset

public short SubstituteNameOffset
Offset, in bytes, of the substitute name string in the PathBuffer array. Note that this offset must be divided by sizeof(WCHAR) to get the array index.

### SubstituteNameLength

public short SubstituteNameLength
Length, in bytes, of the substitute name string. If this string is NULL-terminated, SubstituteNameLength does not include space for the UNICODE_NULL character.

### PrintNameOffset

public short PrintNameOffset
Offset, in bytes, of the print name string in the PathBuffer array. Note that this offset must be divided by sizeof(WCHAR) to get the array index.

### PrintNameLength

public short PrintNameLength
Length, in bytes, of the print name string. If this string is NULL-terminated, PrintNameLength does not include space for the UNICODE_NULL character.

### Flags

public int Flags
Used to indicate if the given symbolic link is an absolute or relative symbolic link. If Flags contains SYMLINK_FLAG_RELATIVE, the symbolic link contained in the PathBuffer array (at offset SubstitueNameOffset) is processed as a relative symbolic link; otherwise, it is processed as an absolute symbolic link.

### PathBuffer

public char[] PathBuffer
First character of the path string. This is followed in memory by the remainder of the string. The path string contains the substitute name string and print name string. The substitute name and print name strings can appear in any order in the PathBuffer. (To locate the substitute name and print name strings in the PathBuffer, use the SubstituteNameOffset, SubstituteNameLength, PrintNameOffset, and PrintNameLength members.) NOTE: MAXIMUM_REPARSE_DATA_BUFFER_SIZE is chosen here based on documentation. Because chars are two bytes, the actual array size needs to be divided by 2

## Constructor Details

### SymbolicLinkReparseBuffer

public SymbolicLinkReparseBuffer()

### SymbolicLinkReparseBuffer

public SymbolicLinkReparseBuffer(Pointer memory)

### SymbolicLinkReparseBuffer

public SymbolicLinkReparseBuffer(String substituteName, String printName, int Flags)

### SymbolicLinkReparseBuffer

public SymbolicLinkReparseBuffer(short SubstituteNameOffset, short SubstituteNameLength, short PrintNameOffset, short PrintNameLength, int Flags, String PathBuffer)

## Method Details

### sizeOf

public static int sizeOf()

### getPrintName

public String getPrintName()

Returns:
  the print name in a String

### getSubstituteName

public String getSubstituteName()

Returns:
  the substitute name in a String