Information générale
Forum:
Borland C++ Builder
Catégorie:
Langage C++ Builder
Titre:
Adjusting Process Token Privileges
Mistery ! Bizarre Bizarre !
Example for change the time when you have not the level of privilege
to execute.
... HANDLE hToken;
... TOKEN_PRIVILEGES newtp, oldtp;
... DWORD dwSize;
... LUID luid;
... if (!OpenProcessToken(GetCurrentProcess(), TOKEN_ADJUST_PRIVILEGES,
&hToken))
... Error -->
... if (!LookupPrivilegeValue(NULL, SE_SYSTEMTIME_NAME, &luid))
... Error -->
... newtp.PrivilegeCount = 1;
... newtp.Privileges[0].Luid = luid;
... newtp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
... if (!AdjustTokenPrivileges(hToken, FALSE, &newtp,
sizeof(TOKEN_PRIVILEGES), &oldtp, &dwSize);
... Error -->
... if (!SetLocalTime(&ParisTime))
Error -->
========================================================
= Here all time with (1314) ERROR_PRIVILEGE_NOT_HELD =
========================================================
// For disable SE_SYSTEMTIME_NAME again
... AdjustTokenPrivileges(hToken, FALSE, &oldtp, dwSize, NULL, NULL);
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
The same problem for Windows NT4 or 2K why ? SOS ...---...
Répondre
Voir le fil de ce thread
Voir le fil de ce thread à partir de ce message seulement
Voir tous les messages de ce thread
Voir tous les messages de ce thread à partir de ce message seulement