2012-06-15 2 views
2

Я нашел этот скрипт, который дает вам имя пользователя в Windows, но я получаю следующую ошибку: это не про имя пользователя, а про недостающий lib, мне нужен 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

Я не уверен, что "дл/win32" есть. Я использовал жемчужину Win32API. Используя его вместо дл/win32 сделал работу сценария для меня:

require 'Win32API' 
+0

вот и все! dl/win32 должна быть более старой версией, которую я предполагаю, спасибо – peter

0

Моя догадка, вы должны запустить

gem install dl 
+0

я сделал это, он установлен без ошибок, но этот камень, по-видимому, не имеет ничего общего с ним, потому что я все еще получаю ту же ошибку. dl-win32, dl/win32 или dl_win32 не найдены в качестве драгоценных камней – peter