Package com.sun.jna.platform.win32
Class Advapi32Util.Privilege
java.lang.Object
com.sun.jna.platform.win32.Advapi32Util.Privilege
- All Implemented Interfaces:
Closeable
,AutoCloseable
- Enclosing class:
- Advapi32Util
Convenience class to enable certain Windows process privileges
-
Constructor Details
-
Privilege
Construct and enable a set of privileges- Parameters:
privileges
- the names of the privileges in the form of SE_* from Advapi32.java- Throws:
IllegalArgumentException
Win32Exception
-
-
Method Details
-
close
public void close()Calls disable() to remove the privileges- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- See Also:
-
enable
Enables the given privileges. If required, it will duplicate the process token. No resources are left open when this completes. That is, it is NOT required to drop the privileges, although it is considered a best practice if you do not need it. This class is state full. It keeps track of whether it has enabled the privileges. Multiple calls to enable() without a drop() in between have no affect.- Returns:
- pointer to self (Privilege) as a convenience for try with resources statements
- Throws:
Win32Exception
-
disable
Disabled the prior enabled privilege- Throws:
Win32Exception
-