Class SessionWtsData

java.lang.Object
oshi.driver.windows.registry.SessionWtsData

@ThreadSafe public final class SessionWtsData extends Object
Utility to read process data from HKEY_PERFORMANCE_DATA information with backup from Performance Counters or WMI
  • Field Details

    • WTS_ACTIVE

      private static final int WTS_ACTIVE
      See Also:
    • WTS_CLIENTADDRESS

      private static final int WTS_CLIENTADDRESS
      See Also:
    • WTS_SESSIONINFO

      private static final int WTS_SESSIONINFO
      See Also:
    • WTS_CLIENTPROTOCOLTYPE

      private static final int WTS_CLIENTPROTOCOLTYPE
      See Also:
    • IS_VISTA_OR_GREATER

      private static final boolean IS_VISTA_OR_GREATER
    • WTS

      private static final com.sun.jna.platform.win32.Wtsapi32 WTS
  • Constructor Details

    • SessionWtsData

      private SessionWtsData()
  • Method Details

    • queryUserSessions

      public static List<OSSession> queryUserSessions()
    • convertBytesToInts

      private static int[] convertBytesToInts(byte[] address)
      Per WTS_INFO_CLASS docs, the IP address is offset by two bytes from the start of the Address member of the WTS_CLIENT_ADDRESS structure. Also contrary to docs, IPv4 is not a null terminated string.

      This method converts the byte[20] to an int[4] parseable by existing code

      Parameters:
      address - The 20-byte array from the WTS_CLIENT_ADDRESS structure
      Returns:
      A 4-int array for ParseUtil.parseUtAddrV6toIP(int[])