Здравствуйте, FDSC, Вы писали:
FDS>Здравствуйте, FDSC, Вы писали:
FDS>>А зачем именно вируальную? Тут просто надо память прочесть. (см. OpenProcess. ReadProcessMemory и AdjustTokenPrivileges).
FDS>Забыл загрузить сообщения выше. Уже написали.
FDS>ГЛАВНОЕ: не забудь получить привелегии.
FDS>Что-то вроде этого.
FDS>if (NOT OpenProcessToken(GetCurrentProcess(),
FDS> TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken)) then
FDS> raise Exception.Create('OpenProcessToken');
FDS>//---
FDS> LookupPrivilegeValue(nil, 'SeDebugPrivilege',
FDS> tkp.Privileges[0].Luid);
FDS> tkp.PrivilegeCount := 1; // one privilege to set
FDS> tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
FDS> AdjustTokenPrivileges(hToken,
FDS> longbool(FALSE),
FDS> tkp,
FDS> 0,
FDS> nil,
FDS> tmp);
FDS>
Он мне на OpenProcessToken говорит false, код ошибки 6