Вниз
Скачать: CL | DM;

Как запустить в отладочном режиме?   Найти похожие ветки 

 
ers   (2003-01-17 09:28) [0]

Народ!
Как можно запустить какуюнибудь прогу с отладочными привелегиями, а ещё лучше если саму себя запустить с этими привелегиями.....
И вопрос ещё один! Если мы запустили прогу с отладочными привелегиями, то родитель должен постоянно висеть или нет?


 
Digitman ©   (2003-01-17 09:30) [1]

см. CreateProcess[Ex] c флагом DEBUG_PROCESS


 
SeF ©   (2003-01-17 11:17) [2]

если себя то "включи" себе debug привилегию (если запускается под админом)


 
ers   (2003-01-17 16:26) [3]

А как конкретно это осуществить?


 
SeF ©   (2003-01-18 00:36) [4]

Установка/снятие debug привилегии:

if not OpenProcessToken( GetCurrentProcess(),
var
hToken:THandle;
SeDebugNameValue:Int64;
tkp:TOKEN_PRIVILEGES;
ReturnLength:Cardinal;
hProcess:THandle;
pfnExitProcess: Pointer;
hInstance: Integer;
hThread: DWORD;

begin
TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken )
then exit;

// Получаем LUID привилегии
if not LookupPrivilegeValue( nil, "SeDebugPrivilege", SeDebugNameValue )
then begin
CloseHandle(hToken);
exit;
end;

tkp.PrivilegeCount:= 1;
tkp.Privileges[0].Luid := SeDebugNameValue;
tkp.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;

// Добавляем привилегию к нашему процессу
AdjustTokenPrivileges(hToken,false,tkp,SizeOf(tkp),tkp,ReturnLength);
if GetLastError()<>ERROR_SUCCESS then exit;

// делаем что хотим

// Удаляем привилегию
tkp.Privileges[0].Attributes := 0;
AdjustTokenPrivileges(hToken, FALSE, tkp, SizeOf(tkp), tkp, ReturnLength);
if GetLastError() <> ERROR_SUCCESS
then exit;
end;


 
SeF ©   (2003-01-18 00:38) [5]

опс.. :)

var
hToken:THandle;
SeDebugNameValue:Int64;
tkp:TOKEN_PRIVILEGES;
ReturnLength:Cardinal;
hProcess:THandle;
pfnExitProcess: Pointer;
hInstance: Integer;
hThread: DWORD;

begin
if not OpenProcessToken( GetCurrentProcess(),
TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY, hToken )
then exit;
...




 
Nick_N_A ©   (2003-01-18 05:26) [6]

Допустим нашли мы прогу, стартовали, подготовили,
но у меня получается ее только запускать и останавливать,
Suspend/Resume, а как просмотреть переменные/память, и т д ?
GetAce вроде тепло, но неработает . . .



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
1-17143
User
2003-02-21 17:33
2003.03.06
Шифровальшик


3-16965
Ditrix
2003-02-17 13:28
2003.03.06
SQL запрос на выявление дублей ID


6-17237
Anton
2003-01-17 14:10
2003.03.06
Что нибудь еще нужно для коннекта кроме Hosta и Porta для idPop3


1-17047
Zergling
2003-02-25 06:19
2003.03.06
На RTTI-ку навались (пробуем создать инспектор объектов)


1-17026
Ravshan
2003-02-25 10:03
2003.03.06
как можно заставить combobox реагировать на OnMouseDown и т.д.




   Наверх