1

我想在 JRuby 中使用 windows api。请建议任何可以完成 Ctypes(python) 工作的 api。

4

3 回答 3

3

JRuby 包括最初为 Rubinius 创建的 FFI API,但现在也支持 JRuby、MacRuby、MagLev、TinyRb、MRI 和 YARV(最后两个通过 FFI gem)。

FFI API 专门设计用于非常容易地绑定到 C 库,而无需实际编写任何 C(所有映射都以声明性 Ruby DSL 编写)。

Daniel J. Berg,win32-api gem 和所有其他 win32 库的维护者,目前正致力于通过将它们移植到 FFI 来让它们在 JRuby 上运行,但不幸的是,他遇到了一些障碍。

于 2009-08-16T18:43:32.210 回答
0

您可以使用 Java JNA API

请参阅JRuby 符合 Windows API

于 2009-08-16T15:44:42.630 回答
0

http://blog.headius.com/2008/10/ffi-for-ruby-now-available.html

JRuby 有一个外部函数接口。我不确定 Windows 支持的状态,但它可能落后于 *nix 版本。

或者,您可以使用 JNI 和普通 Java 编写自己的包装器,并通过 JRuby 使用它们

于 2009-08-16T15:46:01.067 回答