Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA - Processus dans Gestionaire des taches

2 réponses
Avatar
DCR
Bonjour,

Je suis à la recherche d'un code VBA qui me permettent de lister processus
présents dans le gestionaires des taches de Windows.

Pouvez vous m'aider ?

Question subsidiaire : je suis également interessé par un code qui me
permette de stopper le processus.

Merci de votre aide !

DCR

2 réponses

Avatar
lSteph
Bonjour,
Pour lister (stopper je ne sais pas) inspiré de l'initiation au script wmi
site de microsoft:
Mettre ceci dans le bloc note:
'''''******
strComputer = "." ' Le point (.) représente l'ordinateur local dans WMI
Set wbemServices = GetObject("winmgmts:" & strComputer)
Set wbemObjectSet = wbemServices.InstancesOf("Win32_Process")
For Each wbemObject In wbemObjectSet
mess= mess & vbCrLf & "Nom: " & wbemObject.Name & " - " & _
" Descripteur: " & wbemObject.Handle & " - "& _
" ID processus: " & wbemObject.ProcessID
Next
WScript.Echo mess
''''''******

puis l'enregistrer sous "Attention type de fichier mettre à tous ne pas
laisser texte"
c:montest.vbs

Ensuite dans vba excel ceci dans un module:

'''''******
Sub WmiTest()
Dim shell
Set shell = CreateObject("Wscript.shell")
shell.Run "c:montest.vbs"
End Sub
''''''******
'lSteph

"DCR" a écrit dans le message de news:

Bonjour,

Je suis à la recherche d'un code VBA qui me permettent de lister processus
présents dans le gestionaires des taches de Windows.

Pouvez vous m'aider ?

Question subsidiaire : je suis également interessé par un code qui me
permette de stopper le processus.

Merci de votre aide !

DCR




Avatar
Ange Ounis
Essaye ce genre de code (attention aux sauts de lignes intempestifs provoqués
par le lecteur de courriels) :

''''''''''''''''''
'(Windows 2000-XP-2003)

'Liste des processus actifs (dans un nouveau classeur)
Sub ListeProcesses()
Dim LesProcess, UnProcess, i
Set LesProcess = GetObject("winmgmts:").ExecQuery("select * from Win32_Process ")
Workbooks.Add
For Each UnProcess In LesProcess
i = i + 1
Cells(i, "a").Value = UnProcess.Caption
Next
End Sub

'Clore un processus
Sub FermerProcess(LeProcess As String)
Dim LesProcess, UnProcess, i
Set LesProcess = GetObject("winmgmts:").ExecQuery("select * from Win32_Process ")
For Each UnProcess In LesProcess
If UnProcess.Caption = LeProcess Then UnProcess.Terminate
Next
End Sub

Sub essai()
'ouvrir puis fermer le bloc-notes 5 secondes après
Shell "notepad.exe", vbNormalFocus
Application.Wait (Now + TimeValue("0:00:05"))
FermerProcess "notepad.exe"
End Sub
''''''''''''''''''

----------
Ange Ounis
----------

Bonjour,

Je suis à la recherche d'un code VBA qui me permettent de lister processus
présents dans le gestionaires des taches de Windows.

Pouvez vous m'aider ?

Question subsidiaire : je suis également interessé par un code qui me
permette de stopper le processus.

Merci de votre aide !

DCR