如何分发原生Windows DLL以与XUL Firefox扩展中的js-ctypes一起使用
How to distribute a native Windows DLL to use with js-ctypes inside a XUL Firefox extension
我有一个Firefox XUL扩展,它使用js-ctypes使用本机Windows DLL。
分发此 DLL 文件的推荐方法是什么?
我已经设置了一个开发环境,就像XUL学校教程中描述的那样,但我不确定我应该对目录结构和相应的构建文件(Makefile,manifest等)进行哪些修改,以使我的DLL包含在XPI文件中,然后在客户端使用扩展时可用于js-ctypes。
任何指示将不胜感激。
问候!
通常您只需将DLL与其他内容一起压缩到XPI中并使用em:unpack=true
,否则您将无法加载DLL。
然后,您可以使用例如附加组件管理器来找出DLL在用户系统上的实际安装位置,并使用js-ctypes加载它。
Components.utils.import("resource://gre/modules/AddonManager.jsm");
AddonManager.getAddonByID(YOUR_ADDON_ID, function(addon) {
//var uri = addon.getResourceURI(YOUR_RELATIVE_PATH_TO_THE_DLL);
var uri = addon.getResourceURI("install.rdf");
console.log("uri", uri.spec);
if (uri instanceof Components.interfaces.nsIFileURL) {
var file = uri.file;
console.log("path", file.path);
}
});
顺便说一句:当出于开发目的通过代理文件安装附加组件时,这些东西仍然有效。
相关文章:
- 扩展JS代码
- 在扩展崩溃Firefox中使用JS-ctypes
- 使用lodash'扩展JS对象实例;s的extend方法会导致奇怪的结果
- 如何使用js ctypes Firefox扩展来调用本机C代码
- 如何将重叠结构转换为 js-ctypes
- 如何通过在两个节点之间拖放来制作边缘,并在细胞空间中扩展 egdehandle 扩展.js
- 使用 js-ctypes,如何从 Windows ReadFile 检索输出
- 使用 JS-ctypes 将结构化数据传递给本机代码
- 如何分发原生Windows DLL以与XUL Firefox扩展中的js-ctypes一起使用
- 来自 JavaScript 对象的 JS-ctypes
- 扩展 JS 6.无法将节点添加到树面板
- 扩展 JS Boolean.prototype 失败
- 扩展JS.向容器中添加现有对象会将其从源容器中删除
- 扩展js包含的模板
- "文件“;在mozilla扩展js模块中
- 参数不起作用的Chrome扩展-js
- setConsoleIcon抛出奇怪的错误(未记录的WinAPI到JS-Ctypes)
- getAttribute除了getElementsByTagName不工作在chrome扩展js脚本
- 在js-ctypes中调用SCardListReaders时出错
- js-ctypes: Pointer to intptr_t