Как я могу проверить, включены ли указанные c привилегии, такие как «SeEnableDelegationPrivilege» или «SeCreateGlobalPrivilege» - PullRequest
0 голосов
/ 07 мая 2020

Я действительно надеялся, что этот код будет работать - и у меня были смешанные успехи и неудачи с ним.

        var tkp = new TOKEN_PRIVILEGES { PrivilegeCount = 1, Privileges = new LUID_AND_ATTRIBUTES[1] };
        advapi32.LUID luid = new advapi32.LUID();
        bool b = false;
        try 
        { 
            b = LookupPrivilegeValue(null, "SeEnableDelegationPrivilege", ref luid); 
        }
        catch(AccessViolationException aVE)
        {
            Console.WriteLine("NOT SET");
            return;
        }

        if (b)
            Console.WriteLine("SET");
        else
            Console.WriteLine("NOT SET");

Любая помощь будет принята с благодарностью. Очевидно, сейчас я просто хочу, чтобы он проверил это для текущего пользователя. Я также замечаю различия в результатах, когда просматриваю код (возвращает TRUE) или просто запускаю его без точек останова (возвращает FALSE).

Спасибо

...