dl/win32 加载错误

Posted

技术标签:

【中文标题】dl/win32 加载错误【英文标题】:dl/win32 loaderror 【发布时间】:2012-06-18 15:48:54 【问题描述】:

我在 Windows 中找到了这个为您提供用户名的脚本,但我收到以下错误,这与用户名无关,而是与缺少的库有关,我还需要库 dl/win32 用于其他几个脚本。如何解决这个问题?

C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require': 无法加载此类文件 -- dl/win32 (LoadError)

require 'dl/win32'

def get_user_name
  api = Win32API.new(
    'advapi32.dll',
    'GetUserName',
    'PP',
    'i'
  )

  buf = "\0" * 512
  len = [512].pack('L')
  api.call(buf,len)

  buf[0..(len.unpack('L')[0])]
end

puts get_user_name

【问题讨论】:

【参考方案1】:

我不确定“dl/win32”是什么。我使用了 Win32API gem。使用它而不是 dl/win32 使您的脚本对我有用:

require 'Win32API'

【讨论】:

就是这样!我想 dl/win32 必须是它的旧版本,谢谢【参考方案2】:

我最好的猜测是你必须跑

gem install dl

【讨论】:

我这样做了,它安装没有错误,但这个 gem 显然与它无关,因为我仍然遇到同样的错误。 dl-win32、dl/win32 或 dl_win32 未作为 gem 找到

以上是关于dl/win32 加载错误的主要内容,如果未能解决你的问题,请参考以下文章

当我使用库 (RODBC) 时,出现错误消息警报“无法加载 odbcji32.dll”

“错误:%1 不是有效的 Win32 应用程序。安装项目时无法加载 c++ bson 扩展”

MongoDB快速学习笔记

托管 C++ dll 的加载程序锁定(regsvr32 R6033 错误)

BigQuery 加载镶木地板错误 - Parquet 中的字段 INT32 与架构中的 double 类型不兼容

开机运行软件,出现kernel32.dll错误?求解决方案