private void DecodePrivileges() { IntPtr ipprivs = TGP.Privileges; for (int privcnt = 1; privcnt <= TGP.PrivilegeCount; privcnt++) { LUID_AND_ATTRIBUTES la = (LUID_AND_ATTRIBUTES)Marshal.PtrToStructure(ipprivs, typeof(LUID_AND_ATTRIBUTES)); PrivilegeInfo pinfo = new PrivilegeInfo(privcnt, la); Privileges.AddSafe(pinfo); PrivilegesStringList.AddSafe(pinfo.Name); try { ipprivs = (IntPtr)((Int64)ipprivs + Marshal.SizeOf(typeof(LUID_AND_ATTRIBUTES))); } catch (Exception) { break; } } }