![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Установка приоритета приложения
bg8 © (2004-03-16 11:24:00)У меня имеется приложение с одним окном, мне нужно поставить ему realtime-приоритет. Пытаюсь так:
GetWindowThreadProcessID(Application.Handle,@addr);
SetPriorityClass(addr,REALTIME_PRIORITY_CLASS);
Но функция SetPriorityClass возвращает ошибку.
Вопрос: я что-то делаю неправильно?
bg8 (2004-03-16 15:36:00) [1]
SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS)
- вот это правильно!
Всем спасибо!
Игорь Шевченко (2004-03-16 12:24:00) [2]SetPriorityClass(GetCurrentProcess, REALTIME_PRIORITY_CLASS) ?
Digitman (2004-03-16 11:59:00) [3]
> Но функция SetPriorityClass возвращает ошибку.
> Вопрос: я что-то делаю неправильно?
1. ты не анализируешь ошибку
2. из-за того, что ты не анализируешь ошибку (причина которой легко выясняется по коду ошибки), ты не видишь разницы между хэндломпроцесса и идентификаторомпроцесса.. ф-ция SetPriorityClass требует 1-м параметром именно хэндл процесса, а не его идентификатор ... ф-ция же GetWindowThreadProcessID никаких хэндлов не возвращает (даже судя по имени ф-ции), а возвращает идентификаторы кодового потока и процесса .. хэндл процесса м.б. получен как минимум вызовом CreateProcess[Ex] либо OpenProcess