我可以像这样从命令行运行 wbadmin:
$ c:\windows\system32\wbadmin.exe -?
它有效(我得到了一个适当的帮助信息,这里省略了)。但是,当我在 Ruby 中尝试它时(就像在这个 IRB 会话中一样:)
irb(main):001:0> w=IO.popen('c:\windows\system32\wbadmin.exe -?')
我收到以下错误:
Errno::ENOENT: No such file or directory - c:\windows\system32\wbadmin.exe -?
from (irb):1:in `popen'
from (irb):1
from C:/Ruby193/bin/irb:12:in `<main>'
这使我无法像这样运行 wbadmin。
任何想法为什么?
我怀疑您的 Ruby 二进制文件是 32 位的。32 位程序“看到”“C:\WINDOWS\SYSWOW64”目录为“C:\WINDOWS\SYSTEM32”,而
wbadmin.exe
“C:\WINDOWS\SYSWOW64”中没有。