begin process at 2012 02 16 12:10:52
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Système

 > CHANGER LA PRIORITE DE L'APPLI

CHANGER LA PRIORITE DE L'APPLI


 Information sur la source

Note :
8 / 10 - par 10 personnes
8,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Système Classé sous :priorité, changer, application, setpriorityclass Niveau :Expert Date de création :15/05/1999 Vu / téléchargé :8 366 / 533

Auteur : Nix

Ecrire un message privé
Site perso
Ce membre participe au partage de revenus publicitaires
Commentaire sur cette source (11)
Ajouter un commentaire et/ou une note


 Description

Comment changer la priorité de votre application ?

Mettez les Declaration Suivantes :

Source

  • Option Explicit
  • Public Const NORMAL_PRIORITY_CLASS = &H20
  • Public Const IDLE_PRIORITY_CLASS = &H40
  • Public Const HIGH_PRIORITY_CLASS = &H80
  • Public Const REALTIME_PRIORITY_CLASS = &H100
  • Public Const PROCESS_DUP_HANDLE = &H40
  • Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
  • Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
  • Public Declare Function GetCurrentProcessId Lib "kernel32" () As Long
  • Public Declare Function SetPriorityClass& Lib "kernel32" (ByVal hProcess As Long, ByVal dwPriorityClass As Long)
  • ' Puis mettez ce code dans votre Module :
  • Public Sub ChangePriority(dwPriorityClass As Long)
  • Dim hProcess&
  • Dim ret&, pid&
  • pid = GetCurrentProcessId() ' Récupérer Mon No de Process
  • ' Récupérer un Handle pour le Process
  • hProcess = OpenProcess(PROCESS_DUP_HANDLE, True, pid)
  • If hProcess = 0 Then
  • Err.Raise 2, "ChangePriority", "Impossible d'ouvrir le process"
  • Exit Sub
  • End If
  • ' Change le priorité
  • ret = SetPriorityClass(hProcess, dwPriorityClass)
  • ' Fermeture du Handle du Process
  • Call CloseHandle(hProcess)
  • If ret = 0 Then
  • Err.Raise 4, "ChangePriority", "Impossible de Fermer le process"
  • Exit Sub
  • End If
  • End Sub
  • Private Sub Form_Load()
  • Timer1.Interval = 2000
  • Call Timer1_Timer
  • End Sub
  • Private Sub Timer1_Timer()
  • Static Priority&
  • If Priority = IDLE_PRIORITY_CLASS Then
  • Priority = HIGH_PRIORITY_CLASS
  • Label1.Caption = "Priorité HAUTE !"
  • Else
  • Label1.Caption = "Priorité RALENTI"
  • Priority = IDLE_PRIORITY_CLASS
  • End If
  • Call ChangePriority(Priority)
  • End Sub
Option Explicit
Public Const NORMAL_PRIORITY_CLASS = &H20
Public Const IDLE_PRIORITY_CLASS = &H40
Public Const HIGH_PRIORITY_CLASS = &H80
Public Const REALTIME_PRIORITY_CLASS = &H100
Public Const PROCESS_DUP_HANDLE = &H40

Public Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Public Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
Public Declare Function GetCurrentProcessId Lib "kernel32" () As Long
Public Declare Function SetPriorityClass& Lib "kernel32" (ByVal hProcess As Long, ByVal dwPriorityClass As Long)

' Puis mettez ce code dans votre Module :

Public Sub ChangePriority(dwPriorityClass As Long)

    Dim hProcess&
    Dim ret&, pid&
    pid = GetCurrentProcessId() ' Récupérer Mon No de Process
    ' Récupérer un Handle pour le Process
    hProcess = OpenProcess(PROCESS_DUP_HANDLE, True, pid)

    If hProcess = 0 Then
        Err.Raise 2, "ChangePriority", "Impossible d'ouvrir le process"
        Exit Sub
    End If

    ' Change le priorité
    ret = SetPriorityClass(hProcess, dwPriorityClass)
    ' Fermeture du Handle du Process
    Call CloseHandle(hProcess)

    If ret = 0 Then
        Err.Raise 4, "ChangePriority", "Impossible de Fermer le process"
        Exit Sub
    End If
End Sub

Private Sub Form_Load()
    Timer1.Interval = 2000
    Call Timer1_Timer
End Sub

Private Sub Timer1_Timer()
    Static Priority&

    If Priority = IDLE_PRIORITY_CLASS Then
        Priority = HIGH_PRIORITY_CLASS
        Label1.Caption = "Priorité HAUTE !"
    Else
        Label1.Caption = "Priorité RALENTI"
        Priority = IDLE_PRIORITY_CLASS
    End If

    Call ChangePriority(Priority)
End Sub


 Fichier Zip

Les Membres Club peuvent télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip


 Sources du même auteur

Source avec Zip Source avec une capture Source .NET (Dotnet) FAIRE UN PING (ICMP) EN VB 2005 (LE PLUS SIMPLEMENT DU MONDE...
IMPRIMER LE CONTENU D'UN RICHTEXTBOX
Source avec Zip Source avec une capture TESTEUR DE REGEX (REGULAR EXPRESSIONS)
Source avec Zip Source avec une capture FORCER LE REBOOT SOUS WINDOWS NT OU WINDOWS 2000 (REDÉMARRAG...
COMPTER LES MOTS DANS UNE CHAINE DE CARACTÈRE

 Sources de la même categorie

Source avec Zip Source avec une capture AUTORISER/REFUSER L'EXECUTION DE PROCESSUS par pierreh51
Source avec Zip Source .NET (Dotnet) CLONE/FORK DES FLUX DE LA CONSOLE : PERMETTRE LA REDIRECTION... par ShareVB
Source avec Zip Source .NET (Dotnet) DÉFRAGMENTER UN FICHIER par ShareVB
Source avec Zip Source .NET (Dotnet) ECRAN DE VEILLE : DÉTECTER LE LANCEMENT/DÉCLENCHER/EMPÊCHER par ShareVB
Source avec Zip Source avec une capture DESACTIVER / ACTIVER LES MISES EN VEILLES PC par Arsena

 Sources en rapport avec celle ci

Source avec Zip Source .NET (Dotnet) CRYPTAGE ET DECRYPTAGE par jerichez
Source avec Zip Source .NET (Dotnet) LA LISTE DES TÂCHES COMME DANS L'ONGLET APPLICATION DU GESTI... par ShareVB
Source avec Zip Source avec une capture Source .NET (Dotnet) VERSION DE DÉMO DE NOS PROGRAMMES par acive
Source avec Zip Source avec une capture CREATION DE BASE DE DONNEES AVEC APPLI par Cheval
Source avec Zip Source avec une capture ( CHANGER / AJOUTER/ SUPPRIMER ) LA LANGUE DU CLAVIER DANS ... par chieur

Commentaires et avis

Commentaire de madVinz le 07/07/2002 02:16:48

la meme chose existe pour les threads ...
A noter que REALTIME_PRIORITY_CLASS peut provoquer des plantages, comme le curseur de la souris qui ne bouge plus

Commentaire de gg00xiv le 15/08/2002 02:58:19

c koi le "&" que tu met un peu partout ?

Commentaire de gg00xiv le 15/08/2002 03:00:44

et au fait : ret c'est le retour de la fonction SetPriorityClass, donc si ret =0 c'est que la nouvelle priorite n'a pas pu etre appliquee, et non que le process n'a pas pu etre fermé

Commentaire de SuperClic le 20/08/2002 17:54:31

Suis débutantCé koi la priorié d'un appli ???

Commentaire de Jujufouq le 28/10/2002 14:32:33

---> gg00xiv
Je ne sais plus à quoi correspond ce "&", mais je sais que c'est un truc comme les "$" pour les strings, les "%" pour les integers.... etc. Donc, ne change pas où t'auras peut-être des erreurs.

Commentaire de Tidus le 01/12/2002 19:40:36

La priorité d'une application, c'est la façon dont le système va distribuer le temps processeur disponible en fonction de la demande. Plus la priorité est haute, plus le programme s'exécutera vite, par contre, si le programme utilise beaucoup de puissance, il risque de bloquer le reste du système pendant tout le temps de ses calculs.

Par exermple, tu compresses un fichier. Ca prend un temps fou et ça te gonfle. Tu passes alors ton logiciel de compression en temps réel, ton système se bloque, mais la compression s'accélère grandement, car le processeur est réservé à cette application. Quand elle a terminé, elle ne calcule plus, la souris se remet à bouger, et tu est content, car tu as gagné plein de temps !!!

Commentaire de Tidus le 01/12/2002 19:41:30

Sauf erreur de ma part, le &, c'est pour les Long ...

Commentaire de Cask le 03/12/2003 18:34:49

Ca ne marche pas ton code et je viens de trouver pourquoi.
Dans ta déclaration, C'EST PAS GetCurrentProcessId MAIS GetCurrentProcess TOUT COURT.

Voila, j'espère que tu en tiendras compte.

Ciao

Commentaire de EvilGost le 17/02/2005 12:42:30

marche pas pour moi:
hProcess = OpenProcess(PROCESS_DUP_HANDLE, True, pid) donne hprocess à 0....

Commentaire de grandvizir le 21/05/2005 10:25:19

Par analogie, j'ai bien plus simple (avec "+efficace" sous-entendu)
http://www.delphifr.com/code.aspx?id=11810

Ca tient en 1 ligne...

Commentaire de bogros le 29/10/2005 15:19:15

Bonjour !

Ce code ne marche pas pour moi non plus !!!! Il me sort pid=-1 et hProcess=0 dans tous les cas (j'ai remplacé getcurrentprocessid par getcurrentprocess).
Si j'utilise err.LastDLLError il me sort 87 (paramètres incorrects). Où est l'erreur ? Dans pid=-1 ou est-ce un problème de droit (erreur dans le paramètre Process_dup_handle) ???
Merci pour votre aide !
EvilGost, as-tu réussi à faire marcher ce code ?
Je suis sous XP.

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Changer l'icone d'une application. [ par yann ] Bonjour a tousEst-ce que quelqu'un saurait comment changer l'icone d'une appli sous VB5.Merci pour vos réponses.Yann Changer l'icone d'un formulaire. [ par Lilia ] Salut à tous.G une application en VBA ACCESS et je lui ai mis une icone. Mon pb, c'est que lorsque plusieurs formulaires sont ouverts, l'icone de l'ap Changer le curseur dans l'application [ par guehu ] J'aurais aimé savoir comment changer le curseur de la souris juste quand on se trouve dans le programme vb. comment changer le nom application.productName ?? [ par guyvdv ] Bonjour,J'ai changer le nom de la solution et du project.Mais ce nouveau nom n ' apparer pas dans l'application.productname.Quesque et ou dois je chan Comment changer la forme du curseur de la souris en dehors de la fenêtre d'application ? [ par lnaintre ] Bonjour à tous,Voilà, j'ai crée une petite appli qui donne les coordnnées x et y du curseur sur l'écran. Et j'aimerai changer la forme du curseur de l Application style XP [ par Masq ] J'ai trouvé des sources sur le site pour changer le look d'une application mais j'ai plusieurs problèmes : - cela ne gère pas les MDIForm - Changer priorité d'un processus (pas celui en cours) [ par Stephane ] Salut a tous voila on trouve partout sur internet, comment changer la priorité de l'appli en cours d'exécution, mais moi j'aurais besoin de Changer priorité processus (pas le current) [ par Stephane ] Salut a tous Voila, on trouve partout sur internet, des sources pour modifier la priorité de l'appli en cours d'execution, mais moi j'aurais bes [Vb Net] Changer la résolution de l'écran lors du lancement de l'application de 800*600 -> 1024*768 [ par boumbo73 ] Bonjour, Voila j'ai fait une application optimisé pour l'affichage en 1024*768. Comment je peux faire pour changer la résoltuion de l'&#233 priorité application [ par nanou1605 ] Bonjour, j'aimerais pouvoir lancer une application (.exe) en modifiant sa priorité. J'ai trouvé la source de Nix 'http://www.vbfrance.com/code.aspx?


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 3,260 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales