运行程序并返回值libreoffice calc

时间:2016-01-30 23:48:45

标签: c libreoffice

我在c中编写了一个算法,它接受双精度数字的输入并返回一个double。我想在libreoffice calc中使用它。我尝试使用shell创建一个宏函数,但它只返回0.如何编写宏,以便它返回c程序返回的数字。另外我如何制作它以便我可以将一个单元格中的三个数字输入到c程序中?

谢谢。

1 个答案:

答案 0 :(得分:3)

使用shell接口在这里似乎不可行,因为正如您所提到的,它只会返回0表示成功。相反,我可以想到两种方法来做到这一点。

首先是创建Calc add-in。您可以在IDL文件中指定参数的数量(在您的情况下为3)。这意味着不需要任何OpenOffice Basic代码 - 一切都可以用C ++完成。这是一个相当干净的解决方案。但是需要相当多的配置文件,最初可能比下面描述的更困难。

第二种是动态加载DLL并调用该函数。我使用PyUNO和ctypes库取得了成功,但也可以在OpenOffice Basic中完成。

另见: