![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Есть ProcessId Как получить hProcess, его ветки, юзера, %CPU? [WinXP]
GrayFace © (2004-01-22 07:56:00)Т.Е. Юзера, запустившего его, %процессорного времени.
Игорь Шевченко (2004-03-02 00:48:00) [1]DrPass © (02.03.04 00:33)
> назначение некоторых полей я так и не смог узнать
Каких именно ? Сходи по ссылочке.
DrPass (2004-03-02 00:33:00) [2]Кстати, назначение некоторых полей я так и не смог узнать. Если кто удовлетворит мое любопытство, буду благодарен
Игорь Шевченко (2004-03-02 00:22:00) [3]Кое-что можно найти здесь: http://www.schevchenko.net.ru/SRC/QuerySystemInformation_60.zip
DrPass (2004-03-02 00:10:00) [4]
type
TProcessorTimeInfo = record
IdleTime: int64;
KernelTime: int64;
UserTime: int64;
DpcTime: int64;
InterruptTime:int64;
InterruptCount:cardinal;
end;
TThreadInfo = record
ftCreationTime: TFileTime;
dwUnknown1: DWORD;
dwStartAddress: DWORD;
dwOwningPID: DWORD;
dwThreadID: DWORD;
dwCurrentPriority: DWORD;
dwBasePriority: DWORD;
dwContextSwitches: DWORD;
dwThreadState: DWORD;
dwUnknown2: DWORD;
dwUnknown3: DWORD;
dwUnknown4: DWORD;
dwUnknown5: DWORD;
dwUnknown6: DWORD;
dwUnknown7: DWORD;
end;
TProcessInfo = record
dwOffset: DWORD;
dwThreadCount: DWORD;
dwUnknown1: array[0..5] of DWORD;
ftCreationTime: TFileTime;
ftUserTime: int64;
ftKernelTime: int64;
// dwUnknown4: DWORD;
// dwUnknown5: DWORD;
dwUnknown6: DWORD;
pszProcessName: pwideChar;
dwBasePriority: DWORD;
dwProcessID: DWORD;
dwParentProcessID: DWORD;
dwHandleCount: DWORD;
dwUnknown7: DWORD;
dwUnknown8: DWORD;
dwVirtualBytesPeak: DWORD;
dwVirtualBytes: DWORD;
dwPageFaults: DWORD;
dwWorkingSetPeak: DWORD;
dwWorkingSet: DWORD;
dwUnknown9: DWORD;
dwPagedPool: DWORD;
dwUnknown10: DWORD;
dwNonPagedPool: DWORD;
dwPageFileBytesPeak: DWORD;
dwPageFileBytes: DWORD;
dwPrivateBytes: DWORD;
dwUnknown11: DWORD;
dwUnknown12: DWORD;
dwUnknown13: DWORD;
dwUnknown14: DWORD;
ati: array[0..0] of TThreadInfo;
end;
function NtQuerySystemInformation(si_class: cardinal; si: pointer; si_length: cardinal; ret_length:cardinal):cardinal; stdcall; external 'ntdll.dll';
А еще поподробнее - хелп по Native API
trigger (2004-03-01 23:44:00) [5]А можно по подробнее...
Игорь Шевченко (2004-01-22 11:09:00) [6]NtQuerySystemInformation + NtQueryInformationProcess
Digitman (2004-01-22 08:28:00) [7]hProcess = OpenProcess(..ProcessId ..)