gpt4 book ai didi

firefox - 使用来自 Mozilla Add-on SDK 的 XPCOM 组件

转载 作者:行者123 更新时间:2023-12-03 13:32:23 26 4
gpt4 key购买 nike

我过去曾从事过 Mozilla 附加组件开发(初级)。但是遇到XPCOM,我真的很害怕,把它留在了中间。

最近才接触到Add-on SDK,觉得真的很酷,看到之前花了几个月的时间用SDK做的工作不超过2天,真是令人着迷。现在我又被困在 XPCOM 模块上了。

现在我真的很想利用 XPCOM 的强大功能,但我至少需要一周的时间才能在 SDK 的上下文中熟悉 XPCOM。我需要什么代码来获得我想要的功能?

  • 对于每个用户 session ,我想记录一些东西。我能够区分 session 。我现在想要的是在用户机器中创建文件的代码,从插件中打开它并在上面写一些东西。
  • 访问书签和下载并阅读它们的代码。

  • 如果我不得不从 SDK 切换回来,那将是一个令人心碎的时刻。

    最佳答案

    chrome package为您提供完整的 XPCOM 访问权限。对于文件访问,最好使用 FileUtils module :

    var {Cc, Ci, Cu} = require("chrome");
    var {FileUtils} = Cu.import("resource://gre/modules/FileUtils.jsm");
    var file = FileUtils.getFile("ProfD", ["mylogfile.txt"]);
    var stream = FileUtils.openFileOutputStream(...);
    stream.write(data, data.length);
    stream.close();

    导入模块的语法有些不寻常是由于 bug 683217 .请注意 FileUtils.openFileOutputStream()仅从 Firefox 7 和 FileUtils.openSafeFileOutputStream() 开始可用如果要附加到文件,则不可用。

    对于书签访问,您使用通常的 code snippets , 从...开始:

    var bmsvc = Cc["@mozilla.org/browser/nav-bookmarks-service;1"]
    .getService(Ci.nsINavBookmarksService);

    关于firefox - 使用来自 Mozilla Add-on SDK 的 XPCOM 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7727391/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com