RubyでWMIを使ってプロセス一覧を取得しExcleに吐き出す
[-*煙猴*-] RubyでWindowsのイベントログを検索して出力のコメントで@lample_lifeから「VBSでWMIを使ってプロセス一覧を取得しExcleに吐き出す方法」を教えてもらったので、それもRubyでやってみました。
WMIとかCOMは奥が深すぎてまだ良く理解できていないけど、手軽に「目に見えて動くもの」が作れて面白いです。
WMIとかCOMは奥が深すぎてまだ良く理解できていないけど、手軽に「目に見えて動くもの」が作れて面白いです。
#!/cygdrive/c/InstantRails/ruby/bin/ruby -Ks
require 'win32ole'
xl = WIN32OLE.new('Excel.Application')
xl.Visible = true
book = xl.Workbooks.Add
sheet = book.Worksheets.Item(1)
locator = WIN32OLE.new("WbemScripting.SWbemLocator")
services = locator.ConnectServer(".","root/cimv2")
procset = services.ExecQuery("Select * From Win32_Process")
x=2
procset.each do |proc|
sheet.Cells.Item(x,2).Value=proc.ProcessId
sheet.Cells.Item(x,3).Value=proc.Caption
sheet.Cells.Item(x,4).Value=proc.Name
x=x+1
end
exit