Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取错误“;msvcrt-ruby18.dll缺失;安装rubyinstaller-1.9.2-p136后运行watir脚本时_Ruby_Watir - Fatal编程技术网

获取错误“;msvcrt-ruby18.dll缺失;安装rubyinstaller-1.9.2-p136后运行watir脚本时

获取错误“;msvcrt-ruby18.dll缺失;安装rubyinstaller-1.9.2-p136后运行watir脚本时,ruby,watir,Ruby,Watir,安装了rubyinstaller-1.9.2-p136并在cmd提示符下运行以下命令 gem更新——系统 gem安装watir 命令已成功执行。但是,当我运行包含以下内容的ruby脚本时,我收到错误“程序无法启动,因为您的计算机缺少msvcrt-ruby18.dll。请尝试重新安装程序以解决此问题。”我尝试了多次重新安装,但没有成功。 我搜索了一下,找到了msvcrt-ruby18.dll文件。但我不知道该怎么处理它。请帮忙 我的ruby文件的内容: 需要“watir” ie=Watir::i

安装了rubyinstaller-1.9.2-p136并在cmd提示符下运行以下命令

gem更新——系统
gem安装watir

命令已成功执行。但是,当我运行包含以下内容的ruby脚本时,我收到错误“程序无法启动,因为您的计算机缺少msvcrt-ruby18.dll。请尝试重新安装程序以解决此问题。”我尝试了多次重新安装,但没有成功。 我搜索了一下,找到了msvcrt-ruby18.dll文件。但我不知道该怎么处理它。请帮忙

我的ruby文件的内容:


需要“watir”
ie=Watir::ie.new

后藤http://www.google.com“)

您是否尝试过使用Ruby 1.8.6?我看到了报纸上推荐的

另外,我在一篇关于这一问题的文章中看到了这一点,尤其是在底部。如果您刚刚开始,那么可能不需要支持最新版本的Ruby,因为使用以前版本的Ruby编译的库存在一些问题

您可以将gem定义为针对一个版本的Ruby(使用gem) spec required_ruby_version属性),但是,您不能生成 针对Ruby的1.8.x和1.9.x系列的二进制gem

1.8.x和1.9.x之间存在二进制差异(不同的C-API, 不同的虚拟机(VM等),使这些预编译的扩展 不相容**


显然,Watir是用1.8.x构建的。另一种方法是使用Vapir,它基于Watir,但由于该分支中的更改而不能向后完全兼容

您可能已经安装了一些基于msvcrt-ruby18.dll构建的二进制gems。解决办法是

  • 进行安装,以便您有一个本地构建本机代码的环境
  • 卸载坏的gem(需要时会导致此对话框)
  • 重新安装,但强制本地编译,即

    gem安装gemname--platform=ruby


  • 如果您想运行wxRuby,请不要下载ruby18版本。你得到的是:

    C:/Ruby192/lib/ruby/gems/1.9.1/gems/wxruby-2.0.1-x86-mingw32/lib/wxruby2.so: [BUG] Segmentation fault
    ruby 1.9.2p180 (2011-02-18) [i386-mingw32]
    
    -- control frame ----------
    c:0011 p:-10361992 s:0034 b:0034 l:000033 d:000033 TOP   
    c:0010 p:---- s:0032 b:0032 l:000031 d:000031 CFUNC  :require
    c:0009 p:0013 s:0028 b:0028 l:000027 d:000027 METHOD <internal:lib/rubygems/custom_require>:29
    c:0008 p:0011 s:0023 b:0023 l:000022 d:000022 TOP    C:/Ruby192/lib/ruby/gems/1.9.1/gems/wxruby-2.0.1-x86-mingw32/lib/wx.rb:12
    c:0007 p:---- s:0020 b:0020 l:000019 d:000019 FINISH
    c:0006 p:---- s:0018 b:0018 l:000017 d:000017 CFUNC  :require
    c:0005 p:0073 s:0014 b:0014 l:000010 d:000013 BLOCK  <internal:lib/rubygems/custom_require>:33
    c:0004 p:0014 s:0011 b:0011 l:000010 d:000010 METHOD <internal:lib/rubygems/custom_require>:29
    c:0003 p:0011 s:0006 b:0006 l:00175c d:002234 EVAL   MinimalRuby.rb:1
    c:0002 p:---- s:0004 b:0004 l:000003 d:000003 FINISH
    c:0001 p:0000 s:0002 b:0002 l:00175c d:00175c TOP   
    ---------------------------
    -- Ruby level backtrace information ----------------------------------------
    MinimalRuby.rb:1:in `<main>'
    <internal:lib/rubygems/custom_require>:29:in `require'
    <internal:lib/rubygems/custom_require>:33:in `rescue in require'
    <internal:lib/rubygems/custom_require>:33:in `require'
    C:/Ruby192/lib/ruby/gems/1.9.1/gems/wxruby-2.0.1-x86-mingw32/lib/wx.rb:12:in `<top (required)>'
    <internal:lib/rubygems/custom_require>:29:in `require'
    <internal:lib/rubygems/custom_require>:29:in `require'
    
    C:/Ruby192/lib/ruby/gems/1.9.1/gems/wxruby-2.0.1-x86-mingw32/lib/wxruby2.so:[BUG]分段错误
    ruby 1.9.2p180(2011-02-18)[i386-mingw32]
    --控制框架----------
    c:0011 p:-10361992 s:0034 b:0034 l:000033 d:000033顶部
    c:0010 p:----s:0032 b:0032 l:000031 d:000031 CFUNC:要求
    c:0009P:0013S:0028B:0028L:000027D:000027方法:29
    c:0008 p:0011 s:0023 b:0023 l:000022 d:000022顶部c:/Ruby192/lib/ruby/gems/1.9.1/gems/wxruby-2.0.1-x86-mingw32/lib/wx.rb:12
    c:0007P:----s:0020B:0020L:000019D:000019饰面
    c:0006 p:----s:0018 b:0018 l:000017 d:000017 CFUNC:要求
    c:0005P:0073S:0014B:0014L:000010D:000013块:33
    c:0004 p:0014 s:0011 b:0011 l:000010 d:000010方法:29
    c:0003 p:0011 s:0006 b:0006 l:00175c d:002234评估最小值。rb:1
    c:0002 p:----s:0004 b:0004 l:000003 d:000003饰面
    c:0001 p:0000 s:0002 b:0002 l:00175c d:00175c顶部
    ---------------------------
    --Ruby级别回溯信息----------------------------------------
    MinimalRuby.rb:1:in`'
    :29:在'require'中
    :33:在“紧急救援”中
    :33:在'require'中
    C:/Ruby192/lib/ruby/gems/1.9.1/gems/wxruby-2.0.1-x86-mingw32/lib/wx.rb:12:in`'
    :29:在'require'中
    :29:在'require'中
    
    [注] 您可能在Ruby解释器或扩展库中遇到错误。 欢迎提供Bug报告。 详情如下:

    此应用程序已请求运行时以异常方式终止它。 有关更多信息,请联系应用程序的支持团队


    gem(wxruby 19)下载并安装得很好。当然,这并不意味着它一定会运行。

    要修复此错误,我们需要注册autoit dll“AutoItX3.dll”。在我的机器中,dll位于C:\Ruby192\lib\ruby\gems\1.9.1\gems\rautomation-0.6.3\ext\AutoItX。因此,您需要在命令提示符下转到该文件夹并执行“regsvr AutoItX3.dll”。这解决了问题