所有
我遇到了一个需要你帮助的问题。
在Windows中使用Ruby 1.9.3,我使用以下命令启动浏览器:
system('start http://www.stackoverflow.com')
我尝试以各种方式获取上述系统cmd的pid,如exec,Thread和IO.popen。但每次我得到不同的PID,我假设红宝石过程的PID。
但是我需要启动浏览器的PID,以便在最后完成任务后我可以杀死浏览器。
请注意,我不想使用Watir / Selenium或任何自动化工具。
请帮助我。
答案 0 :(得分:5)
不要使用start
,它会生成新窗口,打开浏览器然后分离窗口。明确指定浏览器路径以解决问题:
browser = %q{"C:\Program Files\Internet Explorer\iexplore.exe"}
pipe = IO.popen("#{browser} http://www.stackoverflow.com")
puts pipe.pid
Process.kill(9, pipe.pid)
运行start /?
以获取start
命令的帮助消息。