怎么做加载/库

时间:2013-07-20 04:05:21

标签: dll rebol rebol3

过去,使用REBOL / Command,这很好用。现在,我正在尝试load/library我编译的.dll,并且/library不再对load进行细化。 Rebol 3中的等价物是什么?我必须制作'extensionimport吗?

2 个答案:

答案 0 :(得分:4)

是的,Rebol 3目前不包含类似Rebol 2的DLL接口,该接口有限,并且没有提供许多有用的选项来包装库,例如回调也非常有限。 Rebol 3通过引入扩展机制解决了这种情况,该机制涉及一些C代码。

还有一些倡议以Rebol 3扩展的形式引入改进的Rebol 2类DLL接口,但该项目还没有成功,尽管在ReCode会议之后,有人声称,它会来。< / p>

你还可以使用Red / System:它是一种类似Rebol的语言,但非常接近C级,所以很容易包装。 Kaj De Vos创建了一些示例,展示了如何write an Rebol 3 extension as Red/System DLL

答案 1 :(得分:2)

由于回答了这个问题,因此Rebol3的某些版本如此。 Atronix,编译了外部函数库,以便您可以

make library! %some.dll

有关Windows的示例,请参阅https://github.com/zsx/r3/blob/atronix/make/tests/ms-drives.r,有关全面的Linux示例,请参阅https://github.com/zsx/c2r3/blob/master/demos/gtk-demos/gtk-demo.reb