Eli miten saan juuri aktiivisena olevan (focused) ikkunan hProcess tiedot?
Maalaisjärjellähän:
SetPriorityClass(openprocess(PROCESS_ALL_ACCESS,
pitäisi toimia mutta kun ei...
Laita nuo edes jotenkin siistimmin, ettei tarvitse kopioida editoriin vain nähdäkseen, mitä olet yrittänyt.
Ja sitten mene lukemaan, miten GetWindowThreadProcessID toimii. Muuttujien käyttöä suositellaan, koska tuollainen koodi on äärimmäisen rumaa ja vaikealukuista.
function SetForegroundWindowProcessPriority(dwPriority: Cardinal): LongBool;
var
Wnd: HWND;
ThreadID, ProcessID: DWORD;
Process: THandle;
begin
Wnd := GetForegroundWindow;
ThreadID := GetWindowThreadProcessID(Wnd, @ProcessID); {Se antaa molemmat}
Process := OpenProcess(PROCESS_ALL_ACCESS, True, ProcessID);
Result := SetPriorityClass(Process, dwPriority);
end;Kiitos selvennyksestä ;)
Juu tuo koodipätkä oli ihan kokeilu mielessä kun etin toimivaa ratkaisua... Lähti toimimaan pienen säädön jälkeen.
Ja huom jos joku tätä käyttää niin muistakaa sulkea closehandle() SetPriorityClass() jälkeen.
Aihe on jo aika vanha, joten et voi enää vastata siihen.