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