Obtient un type spécifié d'information sur un jeton d'accès
#include <Security.au3>
_Security__GetTokenInformation ( $hToken, $iClass )
$hToken | Handle d'un jeton d'accès à partir duquel l'information est à récupérer. Si $iClass spécifie $sTokenSource, le handle doit avoir l'accès $TOKEN_QUERY_SOURCE. Pour toutes les autres valeurs de $iClass, le handle doit avoir l'accès $TOKEN_QUERY. |
$iClass | Indique une valeur pour identifier le type d'information que la fonction doit récupérer |
Succès: | Retourne une structure d'octets remplie avec les informations demandées. |
Échec: | Retourne 0. |
_Security__OpenProcessToken, _Security__OpenThreadToken, _Security__OpenThreadTokenEx
Consultez GetTokenInformation dans la librairie MSDN.
#include <Security.au3> #include <SecurityConstants.au3> #include <WinAPIHObj.au3> Example_TokInfo() Func Example_TokInfo() Local $hProcess = _WinAPI_GetCurrentProcess() If @error Then Return ; Teste les erreurs possibles Local $hToken = _Security__OpenProcessToken($hProcess, $TOKEN_ALL_ACCESS) ; Si le jeton est obtenu... If $hToken Then ; Obtient des informations sur le type de ce jeton : Local $tInfo = _Security__GetTokenInformation($hToken, $TOKENTYPE) ; Le résultat sera des données brutes binaires. Pour $TokenType sa valeur TOKEN_TYPE (valeur d'énumération). Donc en réinterprétant le type en "int": Local $iTokenType = DllStructGetData(DllStructCreate("int", DllStructGetPtr($tInfo)), 1) ConsoleWrite("Le type de jeton est " & $iTokenType & @CRLF) ; Peut être la valeur de l'une des $TOKENPRIMARY ou $TOKENIMPERSONATION ; Ferme le handle du jeton _WinAPI_CloseHandle($hToken) EndIf EndFunc ;==>Example_TokInfo