5

我刚刚在 Windows 7 上安装了 Ruby 2.0.0(使用“rubyinstaller-2.0.0-p247-x64.exe”)。我认为文件关联没问题:

$> assoc .rb
.rb = rbfile

$> ftype rbfile
rbfile="C:\Ruby200-x64\bin\ruby.exe" "%1" %*

但是,我不能将任何参数传递给解释器。

所以如果我运行一个简单的脚本(test.rb):

puts ARGV[0]

它什么也没给:

>test.rb test1
>

我想我应该补充一点,直到昨天我才安装了 Ruby 1.9.3。我卸载了它,并安装了上面的(Ruby 2.0.0)。过去在 Ruby 1.9.3 中一切正常。

请帮忙 !!

谢谢。

4

2 回答 2

3

其他人过去在使用 Vista 和 Ruby 1.9 时也遇到过类似的问题。它似乎与手动修改或旧版本的损坏卸载有关。

在 Windows 7 上全新安装“rubyinstaller-2.0.0-p247-x64.exe”对我有用。assocandftype命令不了解ruby ​​。

> assoc .rb
File association not found for extension .rb

> ftype rbfile
File type 'rbfile' not found or no open command associated with it.

我建议您通过以管理员身份启动 Shell 并运行ftype rbfile=and来取消设置这些值assoc .rb=。如果这没有帮助(进行备份并)删除所有包含rbfile. 正确的键使用RubyFileRubyWFileInnoSetup 脚本包含正确的注册表项。

于 2013-07-20T21:39:33.580 回答
2

在 Windows 7 中为我工作:

  • 运行注册表
  • 找到 HKEY_CLASSES_ROOT\Applications\ruby.exe\shell\open\command
  • 确保 "(default)" 条目显示: (Default) REG_SZ "C:\Ruby21-x64\bin\ruby.exe" "%1" %* 当我检查时,我的 %* 丢失了。当然,ruby 路径必须与安装 ruby​​ 的位置匹配。
于 2017-11-06T19:26:26.850 回答