Главная страница
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.027 c
15-1150829013
DillerXX
2006-06-20 22:43
2006.07.23
Вы случано не знаете,


15-1150778246
Карелин Артем
2006-06-20 08:37
2006.07.23
Чем перекодировать " --- áçâ ªíä䍿¨-â  -Tã, ¢à-- &#2


3-1147863832
Delphi basic
2006-05-17 15:03
2006.07.23
Отображение иерархической информации


1-1149837119
Priest
2006-06-09 11:11
2006.07.23
Получение вывода команды xcopy


2-1151843884
S-Slim
2006-07-02 16:38
2006.07.23
надо копировать DB файл!