Windows peut lancer en programme en lui affectant plus ou moins de ressources système. Si cette priorité peut être modifiée dans le gestionnaire des tâches, elle n'est pas aisée. Pour affecter une priorité haute au moment du lancement du programme, il faut passer par une petite astuce.
Les priorités disponibles sur le système sont :
REALTIME : temps réel
HIGH : haute priorité
ABOVENORMAL : supérieure à la normale
NORMAL : normale
BELOWNORMAL : en-dessous de la normale
LOW : priorité la plus basse
L'astuce consiste à passer par un batch de lancement qui va appreler le programme avec des options. Pour cela, créez un batch contenant :
START /HIGH "%1"
Avec /HIGH pour lancer en priorité haute, mais vous pouvez choisir l'option qui vous convient le mieux.
L'option REALTIME ne peut fonctionner correctement que sur une machine multi-coeurs ou multi-processeurs. Dans le cas d'une machine mono-coeur, mono-processeur, le système riusque d'être instable. Contentez-vous alors de HIGH comme priorité maximale.
Enregistrer ce batch, par exemple, starthigh.bat sur c:
Pour utiliser ce batch, il faut modifier la base de registre. Pour cela, ouvrez-la, et allez dans /HKEY_CLASSES_ROOT/exefile/shell.
Créez ensuite une clef en lui donnant pour nom starthigh.
Modifiez sa valeur chaîne (par défaut) par le nom que vous désirez voir appraître dans le menu contextuel, par exemple, dans notre cas Démarrer en priorité élevée.
Créez une sous-clef que vous nommerez command.
Ouvrez la valeur chaîne (par défaut) et saisissez le chemin complet vers votre batch c:\starthigh.bat.
Validez et quitter la base de registre. La modification est instantanée.
Pour exécuter un programme en priorité élevée (ou la priorité définie), il vous suffira de cliquer sur l'icône du programme avec le bouton droit de la souris et de choisir Démarrer en priorité élevée dans le menu contextuel.