Как при помощи API функций изменить приоритет вашей программы.
Следующий пример покажет, как изменить базовый приоритет программы. Сначала объявим необходимые нам API Функции и константы:
Declare Function SetPriorityClass Lib "kernel32" (ByVal hProcess As Long, ByVal dwPriorityClass As Long) As Long Declare Function GetCurrentProcess Lib "kernel32" () As Long
Теперь добавим на форму выпадающий список (cmbPriority) и кнопку (cmdPriority). В событии загрузки формы заполним выпадающий список доступными типами приоритетов:
Private Sub Form_Load() With cmbPriority .AddItem "Idle Priority" .AddItem "Normal Priority" .AddItem "High Priority" .AddItem "Realtime Priority" .ListIndex = 1 End With End Sub
В событие Click кнопки добавим следующий код, где мы установим для нашей программы выбранный тип приоритета:
Private Sub cmdSetPriority_Click() Select Case cmbPriority.ListIndex Case 0 SetPriorityClass GetCurrentProcess(), IDLE_PRIORITY_CLASS Case 1 SetPriorityClass GetCurrentProcess(), NORMAL_PRIORITY_CLASS Case 2 SetPriorityClass GetCurrentProcess(), HIGH_PRIORITY_CLASS Case 3 SetPriorityClass GetCurrentProcess(), REALTIME_PRIORITY_CLASS End Select End Sub
Теперь всё готово. Запускаем программу и пробуем устанавливать разные приоритеты (если это делать из IDE, то приоритет процесса будет изменяться для Visual Basic).