1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
|
TOKEN_PRIVILEGES tp;
HANDLE hToken;
LUID luid;
HKEY phkResult;
bool IsOk=true;
if(OpenProcessToken(GetCurrentProcess(),
TOKEN_ADJUST_PRIVILEGES,
&hToken ))
{
if(LookupPrivilegeValue(NULL, SE_BACKUP_NAME, &luid))
{
tp.PrivilegeCount = 1;
tp.Privileges[0].Luid = luid;
tp.Privileges[0].Attributes = SE_PRIVILEGE_ENABLED;
AdjustTokenPrivileges(hToken, FALSE, &tp, sizeof(TOKEN_PRIVILEGES),
NULL, NULL );
}
TRegistry* mReg = new TRegistry();
IsOk=mReg->SaveKey("Software\\Borland\\C++Builder","C:\\BCB");
delete mReg;
} |