2012-06-15 60 views
2

我發現這個腳本給你在Windows中的用戶名,但我得到以下錯誤,這不是關於用戶名,但關於丟失的庫,我需要的lib dl/win32也爲其他幾個腳本。如何解決這個問題?dl/win32 loaderror

C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:在`需要':不能加載這樣的文件 - 分升/ 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 

回答

2

我不能確定什麼是 「DL/win32的」 是。我使用了Win32API gem。用它代替DL/win32的使你的腳本的工作對我來說:

require 'Win32API' 
+0

就是這樣! dl/win32必須是它的舊版本,我想,謝謝 – peter

0

我最好的猜測是,你必須運行

gem install dl 
+0

我這樣做,是沒有錯誤安裝,但這種寶石顯然有沒有關係,因爲我仍然得到同樣的錯誤。沒有找到dl-win32,dl/win32或dl_win32作爲寶石 – peter