Jewel-mmo開発日記

RubyでMMORPGを作る過程を記録する日記。 Yokohama.rb 発起人。
2007-03-28

[Ruby]実行中の ruby のファイル名(例えば c:\ruby-1.8\bin\ruby.exe)を取得する方法はありますか?

IRC で教えてもらった方法で取得できました。 下記は Windows の場合の話です。

require 'dl/win32'
GMFN = Win32API.new 'kernel32', 'GetModuleFileName', %w(I P I), 'V'
path = ' ' * 1024
GMFN.call 0, path, path.size
p path.unpack("A*")

実行結果:

["C:\\ruby-1.8\\bin\\ruby.exe"]

参考: