通过windows上的ruby处理2个或更多windows程序的程序实例

时间:2014-12-09 08:09:09

标签: ruby excel command-line wmi win32ole

好的,好的。感谢您阅读本文。

我很容易在ruby中处理多个例如excel的实例,只需定义两个变量:

require 'win32ole'

excel1 = WIN32OLE.new('Excel.Application')
excel2 = WIN32OLE.new('Excel.Application')

...魔法发生了aaaa并且它运作得很好。 (Excel可能默认支持多个实例)

让我们继续其他的例子。 (经过几个小时的谷歌搜索)我找到了一种方法,如何运行两个单独的程序实例,不支持它(至少ruby不使用它们,因为它使用excel)通过创建* .bat文件(或键入它在cmdline中):

start "BrioQry" "C:\Program Files (x86)\Brio\Brio8\Client\Program\brioqry.exe" "C:\samefiletoload.bqy" /e %1
start "BrioQry" "C:\Program Files (x86)\Brio\Brio8\Client\Program\brioqry.exe" "C:\samefiletoload.bqy" /e %2

我不知道/ e和%1和%2正在做什么(%可能是参数)但它工作得很好。是的,文件是一样的。我可以通过winmgmts获得有关该流程的一些信息

require 'win32ole'
mywmi = WIN32OLE.connect("winmgmts:\\\\.")

所以,我的问题是:

1)是否可以通过向WIN32OLE.run()添加某种参数来运行单独的实例(不支持它的程序)

2)是否可以连接到已经运行的进程(通过cmdline启动) WIN32OLE.connect方法

3)如果我不想通过尝试来实现这个

4)如果在ruby或python中有其他方法可以做到这一点

(是的,我希望然后使用该应用程序)

谢谢!!!

0 个答案:

没有答案