Interface VirtualMachine.ForHotSpot.Connection.ForJnaWindowsNamedPipe.WindowsLibrary

All Superinterfaces:
com.sun.jna.AltCallingConvention, com.sun.jna.Library, com.sun.jna.win32.StdCall, com.sun.jna.win32.StdCallLibrary
Enclosing class:
VirtualMachine.ForHotSpot.Connection.ForJnaWindowsNamedPipe

protected static interface VirtualMachine.ForHotSpot.Connection.ForJnaWindowsNamedPipe.WindowsLibrary extends com.sun.jna.win32.StdCallLibrary
A library for interacting with Windows.
  • Nested Class Summary

    Nested classes/interfaces inherited from interface com.sun.jna.Library

    com.sun.jna.Library.Handler

    Nested classes/interfaces inherited from interface com.sun.jna.win32.StdCallLibrary

    com.sun.jna.win32.StdCallLibrary.StdCallCallback
  • Field Summary

    Fields inherited from interface com.sun.jna.Library

    OPTION_ALLOW_OBJECTS, OPTION_CALLING_CONVENTION, OPTION_CLASSLOADER, OPTION_FUNCTION_MAPPER, OPTION_INVOCATION_MAPPER, OPTION_OPEN_FLAGS, OPTION_STRING_ENCODING, OPTION_STRUCTURE_ALIGNMENT, OPTION_SYMBOL_PROVIDER, OPTION_TYPE_MAPPER

    Fields inherited from interface com.sun.jna.win32.StdCallLibrary

    FUNCTION_MAPPER, STDCALL_CONVENTION
  • Method Summary

    Modifier and Type
    Method
    Description
    com.sun.jna.platform.win32.WinNT.HANDLE
    CreateRemoteThread(com.sun.jna.platform.win32.WinNT.HANDLE process, com.sun.jna.platform.win32.WinBase.SECURITY_ATTRIBUTES securityAttributes, int stackSize, com.sun.jna.Pointer code, com.sun.jna.Pointer argument, com.sun.jna.platform.win32.WinDef.DWORD creationFlags, com.sun.jna.Pointer threadId)
    An alternative implementation of Kernel32.CreateRemoteThread(WinNT.HANDLE, WinBase.SECURITY_ATTRIBUTES, int, WinBase.FOREIGN_THREAD_START_ROUTINE, Pointer, WinDef.DWORD, Pointer) that uses a pointer as the code argument rather then a structure to avoid accessing foreign memory.
    boolean
    GetExitCodeThread(com.sun.jna.platform.win32.WinNT.HANDLE thread, com.sun.jna.ptr.IntByReference exitCode)
    Receives the exit code of a given thread.
    com.sun.jna.Pointer
    VirtualAllocEx(com.sun.jna.platform.win32.WinNT.HANDLE process, com.sun.jna.Pointer address, int size, int allocationType, int protect)
    Changes the state of memory in a given process.
    boolean
    VirtualFreeEx(com.sun.jna.platform.win32.WinNT.HANDLE process, com.sun.jna.Pointer address, int size, int freeType)
    Frees memory in the given process.
  • Method Details

    • VirtualAllocEx

      com.sun.jna.Pointer VirtualAllocEx(com.sun.jna.platform.win32.WinNT.HANDLE process, com.sun.jna.Pointer address, int size, int allocationType, int protect)
      Changes the state of memory in a given process.
      Parameters:
      process - The process in which to change the memory.
      address - The address of the memory to allocate.
      size - The size of the allocated region.
      allocationType - The allocation type.
      protect - The memory protection.
      Returns:
      A pointer to the allocated memory.
    • VirtualFreeEx

      boolean VirtualFreeEx(com.sun.jna.platform.win32.WinNT.HANDLE process, com.sun.jna.Pointer address, int size, int freeType)
      Frees memory in the given process.
      Parameters:
      process - The process in which to change the memory.
      address - The address of the memory to free.
      size - The size of the freed region.
      freeType - The freeing type.
      Returns:
      true if the operation succeeded.
    • CreateRemoteThread

      @MaybeNull com.sun.jna.platform.win32.WinNT.HANDLE CreateRemoteThread(com.sun.jna.platform.win32.WinNT.HANDLE process, @MaybeNull com.sun.jna.platform.win32.WinBase.SECURITY_ATTRIBUTES securityAttributes, int stackSize, com.sun.jna.Pointer code, com.sun.jna.Pointer argument, @MaybeNull com.sun.jna.platform.win32.WinDef.DWORD creationFlags, @MaybeNull com.sun.jna.Pointer threadId)
      An alternative implementation of Kernel32.CreateRemoteThread(WinNT.HANDLE, WinBase.SECURITY_ATTRIBUTES, int, WinBase.FOREIGN_THREAD_START_ROUTINE, Pointer, WinDef.DWORD, Pointer) that uses a pointer as the code argument rather then a structure to avoid accessing foreign memory.
      Parameters:
      process - A handle of the target process.
      securityAttributes - The security attributes to use or null if no attributes are provided.
      stackSize - The stack size or 0 for using the system default.
      code - A pointer to the code to execute.
      argument - A pointer to the argument to provide to the code being executed.
      creationFlags - The creation flags or null if no flags are set.
      threadId - A pointer to the thread id or null if no thread reference is set.
      Returns:
      A handle to the created remote thread or null if the creation failed.
    • GetExitCodeThread

      boolean GetExitCodeThread(com.sun.jna.platform.win32.WinNT.HANDLE thread, com.sun.jna.ptr.IntByReference exitCode)
      Receives the exit code of a given thread.
      Parameters:
      thread - A handle to the targeted thread.
      exitCode - A reference to the exit code value.
      Returns:
      true if the exit code retrieval succeeded.