在Windows上使用Ruby的popen3或等效

我正在制作一个使用Open3.popen3运行shell命令的Vim插件,我需要结果和退出代码。 它在Linux上正常工作,但在Windows上冻结。 我已经在Windows下检查Open3.popen3 ,每当我运行Open3.popen3Process.spawn ,shell都会冻结。 我试过安装win32-open3-19 gem(并且加载了require 'win32/open3 ) – 但它仍然冻结。

有没有其他方法或gem我可以使用? 我更喜欢一些尽可能靠近Open3 (所以我的Linux和Windows版本可以尽可能地分享代码)。

我正在运行在Windows 7 64位上通过RubyInstaller安装的Ruby 1.9.3。

更多细节

这是我想运行的确切代码: https : //github.com/someboddy/vim-erroneous/blob/master/autoload/erroneous.rb#L43

它在Linux上工作,但在Windows上冻结。

在我的Windows上,我打开pry然后写:

 require 'win32/open3' inp,out,err,wait_thr=Open3.popen3('cmd') 

而我的壳冻结。 当我在Linux上尝试它时(使用'bash'而不是'cmd'),它工作得很好。 我也尝试过'dir'(它不应该等待用户input),它也冻结了。