actuellement avec Win32_Process WMI, je semble incapable de détecter si un fichier de commandes est en cours d'exécutioncomment utiliser WMI pour découvrir un fichier batch (.bat) en cours d'exécution?
tout ce qu'il énumère est LigneCommande de cmd.exe, sans me dire quel fichier batch qui cmd.exe particulier est en cours d'exécution. Quelqu'un at-il des idées là-bas?
extrait de code (rubis wmi)
many_args = 'batch_file.bat'
procs = WMI::Win32_Process.find(:all)
procs.each{|proc|
if (proc.CommandLine.contain?(many_args)) || proc.Name.include?(many_args) # never succeeds
...
end
}
J'aime vraiment le code - cela fonctionne pour vous sur votre boîte si vous avez test.cmd en cours d'exécution dans anot sa fenêtre ex: contenu bash -c 'sommeil 1000' ou quoi pas? -r – rogerdpack
tout ce que j'ai fait était de faire test.cmd avec pause comme seule commande. Cela a fonctionné pour moi sur ma machine. Windows XP - ruby 1.8.6. Ça ne marche pas pour toi? – Beanish
Intéressant. Cela fonctionne pour .cmd mais pas pour .bat [?] Doux - au moins j'ai un travail autour de nommer tous mes fichiers .bat. Cmd :) -r – rogerdpack