Obtenir la liste des process Windows actif, est-ce possible?

Obtenir la liste des process Windows actif, est-ce possible? - Perl - Programmation

Marsh Posté le 03-03-2005 à 16:39:52    

Bonjour,  
 
je suis nouveau en programmation PERL. J'aimerais savoir comment faire pour obtenir la liste des process qui sont actuellement actif dans Windows? Est-ce possible?  
 
J'ai lu la documentation sur Win32::Process, mais, à ce que j'en comprend, les possibilités(killer, suspend, resume, etc) sont seulement pour les process créés dans le programme PERL(Win32::Process::Create()).  
 
Merci pour votre aide!

Reply

Marsh Posté le 03-03-2005 à 16:39:52   

Reply

Marsh Posté le 03-03-2005 à 16:46:33    

sous Unix, je faisais un appel système :/ je trouve ca pas très propre car je ne connais pas de fonction native pour obtenir la-dite liste
sous windows, il faudrait peut-être passer par des exécutables externes ? :/

Reply

Marsh Posté le 03-03-2005 à 19:23:59    

Oui c'est peut-être une bonne idée, je n'y avais pas pensé. Je vais essayer avec l'utilitaire tlist.exe.
 
Merci couak! :)

Reply

Marsh Posté le 08-03-2005 à 09:15:09    

J'ai aussi testé pslist pour extraire le nom de certaines appli et çà marche nickel !
Merci pour l'info juste en dessous Aricoh :wahoo:


Message édité par pierrero le 09-03-2005 à 10:38:55
Reply

Marsh Posté le 08-03-2005 à 10:46:01    

couak a écrit :

sous windows, il faudrait peut-être passer par des exécutables externes ? :/


Si tu es sous un windows NT, tu peux faire appel aux utilitaires de PsTools.
 
Avec ces utilitaires (que tu peux utiliser dans ton script Perl), tu peux suivre les processus en cours, les killer, vérifier qu'ils ne tournent plus avec un kill, etc.
 
http://www.sysinternals.com/ntw2k/ [...] ools.shtml


---------------
Samsung Galaxy S1 -> Samsung Galaxy S2 -> Samsung Note 2 -> Huawei Ascend Mate 7 -> ZTE Axon 7 -> OnePlus 6T -> Oppo Find X2 PRO
Reply

Marsh Posté le 27-06-2006 à 10:25:19    

J'ai essayé d'utiliser pslist via le perl, mais celà me renvoi l'erreur suivante :
 

Code :
  1. PsList 1.26 - Process Information Lister Copyright (C) 1999-2004
  2. Mark Russinovich Sysinternals -
  3. www.sysinternals.com Processor performance object not found on PC1036
  4. Run Exctrlst from the Windows Resource
  5. Kit to repair the performance counters.


 
mon code d'appel :
 

Code :
  1. my $sortie = qx(PsTools/pslist.exe);


 
Pourtant cela marche bien quand je passe par l'invite de commande (cmd.exe)
Quelqu'un a une idée ?


Message édité par turinatas le 27-06-2006 à 10:37:34
Reply

Marsh Posté le 28-06-2006 à 11:49:42    

essayes tasklist si tu es sous winxp ou 2003, c'est une commande inclus de base avec ces OS

Reply

Marsh Posté le 17-07-2007 à 11:17:49    

Essai cela.
 
use Win32::OLE('in');
 
# perform all of the initial steps in one swell foop
 
$sobj = Win32::OLE->GetObject(
                      'winmgmts:{impersonationLevel=impersonate}')
      or die "can't create server object: ".Win32::OLE->LastError(  )."\n";
 
foreach $process (in $sobj->InstancesOf("Win32_Process" )){
  print $process->{Name}." is pid #".$process->{ProcessId},"\n";
}

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed