https://twitter.com/hajimepg/status/1316278995
こーゆーつぶやきがあったので、帰ったら修正します。
#include <windows.h> #include "ruby.h" static VALUE ruby_path(VALUE self) { HMODULE hModule; char path[_MAX_PATH]; char short_path[_MAX_PATH]; hModule = GetModuleHandleA(NULL); GetModuleFileNameA(hModule, path, _MAX_PATH); GetShortPathNameA(path, short_path, _MAX_PATH); return rb_str_new2(short_path); } __declspec(dllexport) void Init_ruby_path() { VALUE m; m = rb_define_module("RubyPath"); rb_define_module_function(m, "ruby_path", ruby_path, 0); }
追記
直しました。
http://rubyforge.org/frs/?group_id=7930&release_id=32272