Sha256: 14fa8de23d269569361aa4ec43a187f93defdff96c1a78efcb12b6a178c09d72

Contents?: true

Size: 623 Bytes

Versions: 1

Compression:

Stored size: 623 Bytes

Contents

require 'ruby-wmi'
require 'sane'
require 'andand'
require 'win32/process' # waitpid for doze

class After

  def self.find_pids(many_args)

    procs = WMI::Win32_Process.find(:all)
    pids = []
    for proc in procs # TODO respect proc.Name!
      if proc.CommandLine.andand.contain?(many_args)
        pids << proc.ProcessId.to_i
        if $VERBOSE
         print 'adding ', proc.ProcessId, ' ', proc.Name, ' ', proc.CommandLine, "\n"
        end
      end
    end
    pids
  end

  def self.find_and_wait_for(args)
   pids = find_pids args
   pids.each{|pid| Process.waitpid pid}
  end

end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
after-0.0.2 lib/after.rb