[UDF] NTProcess : Agir sur les processus

Partagez des fonctions et des UDF AutoIt.
Règles du forum
.
Répondre
Kintow
Niveau 1
Niveau 1
Messages : 1
Enregistré le : lun. 20 déc. 2010 00:13
Status : Hors ligne

[UDF] NTProcess : Agir sur les processus

#1

Message par Kintow »

Salut !
Je me suis juste inscrit ici pour poster cet UDF, donc je m'excuse si je ne fais pas ça dans les règles.

Nom : NTProcess
Permet de : Suspendre,Reprendre,Tuer un ou plusieurs processus
Utilisation :

_NTProcess("NtSuspendProcess","AutoIt3.exe") : Suspends AutoIt3.exe
_NTProcess("NtResumeProcess","AutoIt3.exe") : Reprends AutoIt3.exe
_NTKill("AutoIt3.exe") : Tue AutoIt3.exe (reprise de CloseProcess() )

Code : Tout sélectionner

Func _NTProcess($NtAction,$process)
$processid = ProcessExists($process)
If $processid Then
    $ai_Handle = DllCall("kernel32.dll", 'int', 'OpenProcess', 'int', 0x1f0fff, 'int', False, 'int', $processid)
    $i_sucess = DllCall("ntdll.dll","int",$NtAction,"int",$ai_Handle[0])
    DllCall('kernel32.dll', 'ptr', 'CloseHandle', 'ptr', $ai_Handle)
    If IsArray($i_sucess) Then
        Return 1
    Else
        SetError(1)
        Return 0
    Endif
Else
    SetError(2)
    Return 0
EndIf
EndFunc

Func _NTKill($process)
    $processid = ProcessExists($process)
If $processid Then
    ProcessClose($processid)
Else
    SetError(1)
    Return(0)
EndIf
EndFunc
En éspérant que ça en aide certains
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11773
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [UDF] NTProcess : Agir sur les processus

#2

Message par Tlem »

Bonne présentation. J'ai rajouté la coloration du code, car dans cette section, vous pouvez l'utiliser. ;)

Vous devriez améliorer votre fonction en rajoutant un contrôle sur $NtAction, car en l'état, on peut mettre n'importe quoi ...

La déclaration des variables en local éviterait aussi au compilateur de couiner pour pas grand chose. ;)

Merci pour votre partage.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
AlapOwner
Niveau 1
Niveau 1
Messages : 11
Enregistré le : sam. 20 nov. 2010 17:09
Status : Hors ligne

Re: [UDF] NTProcess : Agir sur les processus

#3

Message par AlapOwner »

Merci Kintow, tu vois là j'ai tout compris :mrgreen:
Répondre