Я пытаюсь собрать dll, а затем использовать его с расширением Firefox.
Мне удалось собрать DLL с помощью gcc под Windows:
#include<stdio.h>
int add(int a,int b)
{
return(a+b);
}
Я пытаюсь сейчасиспользовать его через мою DLL.После прочтения некоторых постов, особенно этого, мне не удалось сделать эту работу: Ссылка бинарного компонента на js-ctypes
Каждый раз, когда я пробую ctypes.open,сообщение об ошибке: не удалось загрузить библиотеку .Тем не менее, путь к DLL правильный.Вот код JS:
Components.utils.import("resource://gre/modules/ctypes.jsm");
AddonManager.getAddonByID("greenfox@octo.com", function(addon)
{
var libcPath = addon.getResourceURI("components/library.dll");
if (libcPath instanceof Components.interfaces.nsIURI)
{
var libc = ctypes.open(libcPath.path);
var libc = ctypes.open(libc);
/* import a function */
var puts = libc.declare("add", /* function name */
ctypes.default_abi, /* call ABI */
ctypes.int32_t, /* return type */
ctypes.int32_t, /* argument type */
ctypes.int32_t /* argument type */
);
var ret = puts(1,2);
alert("1+2="+ret);
}
Есть идеи?