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

GetProcessAffinityMask   Найти похожие ветки 

← →
antonn ©   (2007-09-29 14:16) [0]

как узнать маску CPU системы не узнавая ее через GetProcessAffinityMask, а то она просит hProc, а hProc через OpenProcess, а в OpenProcess tagPROCESSENTRY32, которую я вытаскиваю через process32first(), который перебирает процессы по одному :)
а мне нужно просто узнать маску системы :) Она ведь одна и постоянна, не так ли?


← →
antonn ©   (2007-09-29 14:17) [1]

промахнулся мимо начинающих:)


← →
antonn ©   (2007-09-29 14:21) [2]

красота:)
если делаю так (ну типа цикл, но на один проход)
var cpu_t,cpu_sys:dword; hProc:THandle; handler:thandle; data:tagPROCESSENTRY32;
begin
 handler:=createtoolhelp32snapshot(TH32CS_SNAPALL,0);
data.dwSize:=sizeOf(data);
if handler>0 then begin
if process32first(handler,data) then begin
  hProc:=OpenProcess(PROCESS_ALL_ACCESS,True,data.th32ProcessID);
  GetProcessAffinityMask(hProc,cpu_t,cpu_sys);
  messagedlg(inttostr(cpu_sys),mterror,[mbOK],0);
end;
 CloseHandle(handler);
end;

то первый попавшийся обычно [системный процесс] и возвращает совсем не маску


← →
Riply ©   (2007-09-29 14:23) [3]

А почему нельзя использовать Handle своего процесса ?


← →
antonn ©   (2007-09-29 14:27) [4]

чувствую себя балбесом, но где его подать? :)
hProc:=OpenProcess(PROCESS_ALL_ACCESS,True,application.handle);
возвращает ерунду


← →
Riply ©   (2007-09-29 14:31) [5]

Тебе же нужен Handle ?
Так зачем OpenProcess ?
Используй GetCurrentProcess.
P.S.
application.handle - не ID процесса.


← →
antonn ©   (2007-09-29 14:38) [6]

спасибо!
пойду застрелюсь %)


← →
antonn ©   (2007-09-29 15:01) [7]

а еще один вопрос. Системная маска она одна на все процессы и постоянна, или на разные процессы может быть разной?



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

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



Память: 0.46 MB
Время: 0.015 c
2-1190999717
Pacific
2007-09-28 21:15
2007.10.21
System


15-1190600574
Slider007
2007-09-24 06:22
2007.10.21
С днем рождения ! 24 сентября 2007 понедельник


2-1190951690
zzzz
2007-09-28 07:54
2007.10.21
Компонент DbEdit, узнать код клавиши разделителя


2-1190789736
l_v
2007-09-26 10:55
2007.10.21
ServerSocket


2-1190796642
F@T@L_Err0r
2007-09-26 12:50
2007.10.21
TColor




   Наверх