Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.07.23;
Скачать: CL | DM;

Вниз

Приоритет программы   Найти похожие ветки 

 
Gizza ©   (2006-07-02 16:57) [0]

Здрасте, всем доброго....

Как с помощью TrackBar устанавливать приоритет программы?

PS
ээ.. как например в Winamp в меню Установок


Заранее спасибо.


 
PSPF2003 ©   (2006-07-02 17:05) [1]

Вопрос:
Как увеличить процессорное время, выделяемого программе?
Ответ:
Следующий пример изменяет приоритет приложения. Изменение приоритета следует использовать с осторожностью - т.к. присвоение слишком высокого приоритета может привети к медленной работе остальных программ и системы в целом. См. Win32 help for SetThreadPriority() function.
Пример:

            procedure TForm1.Button1Click(Sender: TObject);
            var
              ProcessID : DWORD;
              ProcessHandle : THandle;
              ThreadHandle : THandle;
            begin
              ProcessID := GetCurrentProcessID;
              ProcessHandle := OpenProcess(PROCESS_SET_INFORMATION,
                                           false,
                                           ProcessID);
              SetPriorityClass(ProcessHandle, REALTIME_PRIORITY_CLASS);
              ThreadHandle := GetCurrentThread;
              SetThreadPriority(ThreadHandle, THREAD_PRIORITY_TIME_CRITICAL);
            end;


 
PSPF2003 ©   (2006-07-02 17:07) [2]

TrackBar сам прикрутишь.  Проволочкой:)))


 
PSPF2003 ©   (2006-07-02 17:12) [3]

Да, забыл написать материал с http://www.delphi.vitpc.com/ Ответы на вопросы. WinApi


 
PSPF2003 ©   (2006-07-02 17:14) [4]

Ой извиняюсь данный сайт уже не существует :)


 
Gizza ©   (2006-07-02 17:18) [5]

Не фига не понял, но все равно спасибо, теперь будет от чего отталкиваться.
PSPF2003 респект! Пошел проволку искать :)


 
Ketmar ©   (2006-07-02 17:57) [6]

>Gizza ©   (02.07.06 17:18) [5]
читай help из Platform SDK. "до осознания и просветления". (ц) там всё разжёвано.


 
Юрий Зотов ©   (2006-07-02 18:02) [7]

> Как с помощью TrackBar устанавливать приоритет программы?

Примерно так же, как с помощью руля приехать на дачу. Его надо сначала приделать к автомобилю. Потому что руль сам ездить на дачу не умеет.


 
PSPF2003 ©   (2006-07-02 18:19) [8]


> читай help из Platform SDK. "до осознания и просветления"

Хм. А если сложности с английским?


 
Leonid Troyanovsky ©   (2006-07-02 18:29) [9]


> PSPF2003 ©   (02.07.06 17:05) [1]

>               ProcessID := GetCurrentProcessID;
>               ProcessHandle := OpenProcess


GetCurrentProcess.
Тогда и CloseHandle не потребуется.
Который, кстати, в примере пропущен.

--
Regards, LVT.


 
PSPF2003 ©   (2006-07-02 18:35) [10]


> Который, кстати, в примере пропущен.

Извеняюсь пример не мой :(


 
Gizza ©   (2006-07-02 18:51) [11]


> Примерно так же, как с помощью руля приехать на дачу. Его
> надо сначала приделать к автомобилю. Потому что руль сам
> ездить на дачу не умеет.


Хорошее сравнение.... :)
Ну и как же?


 
PSPF2003 ©   (2006-07-02 18:53) [12]

Либо через If
Либо через Case of


 
Gizza ©   (2006-07-02 18:53) [13]

Извиняюсь, может кто-нибудь подскажет где про это можно почитать, на русском...


 
PSPF2003 ©   (2006-07-02 18:55) [14]

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
 case TrackBar1.Position of
   0 : ;
   1 : ;
 end;
end;


 
Ketmar ©   (2006-07-02 18:57) [15]

>PSPF2003 ©   (02.07.06 18:19) [8]
убить себя об стену и не соваться в программирование.


 
Leonid Troyanovsky ©   (2006-07-02 19:00) [16]


> PSPF2003 ©   (02.07.06 18:35) [10]

>> Который, кстати, в примере пропущен.

> Извеняюсь пример не мой :(


Т.е., есть сомнения, что пропущен?

--
Regards, LVT.


 
PSPF2003 ©   (2006-07-02 19:00) [17]


> убить себя об стену и не соваться в программирование.

???


 
Gizza ©   (2006-07-02 19:06) [18]


> PSPF2003 ©   (02.07.06 18:55) [14]
> procedure TForm1.TrackBar1Change(Sender: TObject);
>begin
>case TrackBar1.Position of    
>0 : ;    
>1 : ;  
>end;
>end;


Угу, это яжу понятно, я как раз и хотел у знать чего писать между : и ; ...


 
PSPF2003 ©   (2006-07-02 19:19) [19]

procedure TForm1.N;
var
 ProcessID : DWORD;
 ProcessHandle : THandle;
 ThreadHandle : THandle;
begin
 ProcessID := GetCurrentProcessID;
 ProcessHandle := OpenProcess(PROCESS_SET_INFORMATION, false, ProcessID);
 SetPriorityClass(ProcessHandle, REALTIME_PRIORITY_CLASS);
 ThreadHandle := GetCurrentThread;
 SetThreadPriority(ThreadHandle, THREAD_PRIORITY_TIME_CRITICAL);
 CloseHandle(ProcessHandle);
end;

procedure TForm1.NN;
var
 ProcessID : DWORD;
 ProcessHandle : THandle;
 ThreadHandle : THandle;
begin
 ProcessID := GetCurrentProcessID;
 ProcessHandle := OpenProcess(PROCESS_SET_INFORMATION, false, ProcessID);
 SetPriorityClass(ProcessHandle, HIGH_PRIORITY_CLASS);
 ThreadHandle := GetCurrentThread;
 SetThreadPriority(ThreadHandle, THREAD_PRIORITY_TIME_CRITICAL);
 CloseHandle(ProcessHandle);
end;

procedure TForm1.NNN;
var
 ProcessID : DWORD;
 ProcessHandle : THandle;
 ThreadHandle : THandle;
begin
 ProcessID := GetCurrentProcessID;
 ProcessHandle := OpenProcess(PROCESS_SET_INFORMATION, false, ProcessID);
 SetPriorityClass(ProcessHandle, NORMAL_PRIORITY_CLASS);
 ThreadHandle := GetCurrentThread;
 SetThreadPriority(ThreadHandle, THREAD_PRIORITY_TIME_CRITICAL);
 CloseHandle(ProcessHandle);
end;

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
case TrackBar1.Position of
  0 : N;
  1 : NN;
  2 : NNN;
end;
end;



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

Текущий архив: 2006.07.23;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.053 c
10-1121686228
Mx
2005-07-18 15:30
2006.07.23
Связь объектов с помощью CORBA


3-1148137898
wirg
2006-05-20 19:11
2006.07.23
Подскажите как исправить название в заголовке Грида


3-1147932661
petvv
2006-05-18 10:11
2006.07.23
Трабла с FastReport 3


5-1135776058
Змей
2005-12-28 16:20
2006.07.23
установка компоненты


15-1150770612
Гриха(пароль забыл)
2006-06-20 06:30
2006.07.23
Чат для локалки