如何从 Firefox 插件执行 Windows 命令?

2023-11-24

如何使用 Firefox 插件执行 Windows 命令并显示其输出?

例如: ping www.stackoverfow.com

我只是想通过执行打包在一起的二进制文件(或)可执行文件或运行 Windows 命令来探索更多 Firefox 插件开发的内容。


你会使用nsI进程为了那个原因。在您的情况下,事情变得更加复杂,因为您不知道要运行哪个应用程序 - 通常是c:\windows\system32\ping.exe但你不能确定。如果你不想解析PATH环境变量你自己可以让命令行 shell 为你做这件事:

Components.utils.import("resource://gre/modules/FileUtils.jsm");

var env = Components.classes["@mozilla.org/process/environment;1"]
                    .getService(Components.interfaces.nsIEnvironment);
var shell = new FileUtils.File(env.get("COMSPEC"));
var args = ["/c", "ping stackoverflow.org"];

var process = Components.classes["@mozilla.org/process/util;1"]
                        .createInstance(Components.interfaces.nsIProcess);
process.init(shell);
process.runAsync(args, args.length);

以供参考:COMSPEC环境变量, 国家安全环境公司.

请注意,您无法从该流程接收返回的数据,您只能在流程完成时收到通知并了解流程是否失败。如果您想获取命令的输出,您必须将输出重定向到文件(运行ping stackoverflow.org > c:\\temp\\foo.txt通过 shell 命令)并随后读出该文件。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何从 Firefox 插件执行 Windows 命令? 的相关文章

  • 如何在我的项目中嵌入可执行文件

    我想在我的 Xcode Cocoa 项目中嵌入一个命令行可执行文件 然后使用 NSTask 启动它 我应该在 setLaunchPath 中使用哪个路径 Thanks 您应该将其添加到您的资源文件夹中 然后 在运行时 读取应用程序的资源包路
  • 如何使用 Firefox Addon Builder 记录选定的文本?

    我遵循了几个教程但没有成功 我认为这是一个经典的例子 但我无法让它发挥作用 我可以保存我的项目 安装插件 当我选择一些文本时 我可以看到上下文菜单项 日志选择 但是当我单击它时 什么也没有发生 exports main function v
  • 是否可以通过插件在 Firefox 上设置配置设置

    我正在寻找一种从网络打印而不提示打印对话框的方法 我刚刚提出了问题 https stackoverflow com questions 5809102 how to print from web without prompting a pr
  • 可执行文件和可重定位目标文件的疑问

    我写了一个简单的Hello World 程序 include
  • 为什么 easy_install 适用于某些 Windows 二进制文件?

    背景 Windows 默认情况下不包含编译器 安装编译器 或许还需要配置 Python 来使用它 是一项足够复杂的任务 许多开发人员都避免这样做 为此 许多具有二进制依赖项的包可以作为包含二进制文件的预编译 Windows 可执行文件提供
  • 将自定义数据嵌入到不会被 ld.so 映射的 ELF 文件中

    我有一个 500MB 的文件 其中包含一些自定义数据 即 ZIP 存档 我想将它嵌入到我的 ELF 可执行文件中 这样当我分发 ELF 文件时 我将只能发送 1 个文件而不是 2 个文件 问题是我不希望在我的应用程序启动时操作系统自动加载这
  • “启动失败。未找到二进制文件。” Snow Leopard 和 Eclipse C/C++ IDE 问题

    不是问题 我刚刚在互联网上搜索了这个问题的解决方案 并认为我会与 SO 的好人分享 我会用通俗易懂的语言来表述 以便新手也能理解 如果这是错误的地方 我们深表歉意 只是想提供帮助 几乎所有尝试使用 Eclipse C C IDE 的 OS
  • 写入自己的日志文件的 Firefox 扩展

    经过一整天的研究如何将浏览器中的内容写入本地文本文件 我正在考虑诸如带有日志文件的 Firefox 扩展之类的东西 有什么方法可以让我的分机写入我的分机 意味着 在我的扩展内有一个日志文件 有关信息 我正在为 Linux 平台进行开发 有关
  • 如何用Java读取.EXE文件的内容

    在 Java 中读取可执行文件有哪些可能的选项和最合适的选项 我想生成 exe 文件的十六进制表示形式 我正在考虑以二进制方式读取文件 然后进行转换 但是我怎样才能读取 exe呢 1 以字节形式读取文件 使用 BufferedInputSt
  • 向 Firefox 扩展添加屏幕截图功能

    是否有跨平台方法从 Firefox 扩展中获取屏幕截图 理想情况下 我希望能够截取 dom 元素的屏幕截图 无论它在页面上是否可见 例如 var 屏幕截图 屏幕截图 document getElementById example 任何指示或
  • “没有这样的文件或目录”但它存在

    我只想从命令行运行可执行文件 arm mingw32ce g 但随后我收到错误消息 bash arm mingw32ce g No such file or directory 我运行的是 Ubuntu Linux 10 10 ls l l
  • ReferenceError:浏览器未定义

    我正在运行这段代码 而 Firefox 给出了错误 未捕获的引用错误 浏览器未定义 const manifest browser runtime getManifest 到目前为止我已经尝试使用这个 var 浏览器 浏览器 铬合金 仍然如此
  • 在 EXE 文件末尾写入字节安全吗?

    我听说如果我们在 EXE 文件末尾附加一些字节 它仍然可以正常工作 在所有情况下都是如此吗 这是一种安全的方法吗 我打算使用程序执行文件中的数据来编写演示 因此它可以是安全的 至少对普通用户而言 并且我不必将数据存储在其他地方 这是不可能用
  • 在 DNN 模块中执行 .exe

    我试图让我的 DNN 模块 6 1 3 在程序中发生特定条件时启动任何类型的可执行文件 此时我只是尝试让它运行记事本并创建一个文本文件 这就是我现在正在尝试的 ProcessStartInfo pi new ProcessStartInfo
  • Wappalyzer如何检测网页技术

    Wappalyzer 如何检测站点的后端编程语言 但在某些情况下无法检测 例如 Facebook 使用 PHP 但无法检测并显示 HTTP 2 Wappalyzer 是一个开源社区驱动的平台 其所有源代码都可以在此链接中找到 https g
  • Spring Boot可执行jar结构

    我正在尝试运行 Spring Boot 示例应用程序 我在 webapp 文件夹下的 images 文件夹中添加了几张图像 与 WEB INF 同一级别 我创建了可执行 jar 这些图像在网页上正确显示 但是 我很困惑 可执行 jar 中的
  • 从后台应用程序启动活动

    我的应用程序在后台运行 我希望当运行下面的代码时该应用程序显示在 Android 手机的顶部 启动 我知道代码肯定会运行 这似乎是一件简单的事情 但我在这个网站上花了几个小时 每个人似乎都在建议这样的事情 Intent intent new
  • Haskell,堆栈:找到可执行文件

    我正在寻找类似的东西 stack whereis hasktags where whereis行为或多或少类似于 UNIXwhereis命令 hasktags是这样运行的 stack exec hasktags stack exec whe
  • 如何在 Firefox 插件中追加到文件?

    var tabs require sdk tabs var iofile require sdk io file var widgets require sdk widget var selection require sdk select
  • Perl 是否有相当于 Python 的 `if __name__ == '__main__'` 的功能?

    有没有一种方法可以确定当前文件是否是 Perl 源中正在执行的文件 在 Python 中 我们使用以下结构来做到这一点 if name main This file is being executed raise NotImplemente

随机推荐

  • 如何防止 PHP 会话在不同的 apache 虚拟主机之间共享?

    如何防止 PHP 会话在不同的 Apache 虚拟主机之间共享 我在 Apache 2 2 上设置了不同的虚拟主机 一切都运行良好 直到我意识到 PHP 会话默认是共享的 编辑也是您始终应该设置 session save path http
  • 带有 Angularjs 的 jQuery ui 日期选择器

    我想将 jQuery UI 日期选择器与 AngularJS 一起使用 我有一个示例 但我的代码不起作用 Sample http www abequar net jquery ui datepicker with angularjs My
  • 将目录添加到现有 .zip 文件

    首先 我想说 我已经尝试寻找解决方案 但我还没有找到不需要解压缩 添加文件夹然后再次压缩的解决方案 我没有使用任何第三方库 如果可能的话 我想使用 system io compression 来执行此操作 如果不可能 我将使用 dotnet
  • KeyDown 事件不适用于 PrintScreen 键

    我正在使用 C windows 应用程序 我正在检查用户按下键盘的哪个键 我已经检查了所有键 但在 printScreen 的情况下它不起作用 private void comboBox1 KeyDown object sender Key
  • 为什么要将 Java 接口方法声明为抽象方法?

    今天我使用了 Eclipse 的 拉接口 重构功能来创建基于现有类的接口 该对话框提供了将新接口的所有新方法创建为 抽象 方法的功能 这样做有什么好处呢 我认为允许将接口方法声明为抽象这一事实是该语言的一个多余且无害的功能 并未受到特别鼓励
  • UINavigationItem提示问题

    我在 UINavigationItem 上遇到提示问题 但无法解决 我有一个主视图控制器和一个详细视图控制器 当我从主控推送到详细信息时 详细信息视图控制器上会显示提示 但是 当我弹回到主视图控制器时 视图不会调整大小 并且窗口会显示出来
  • 如何更改 Sql Server 2005 中 UDT 的基本类型?

    我的类型为 varchar 50 类型的 x 如何将其更改为 varchar 100 看来我不能啊 你不能 你能做的是 使用 OBJECT DEFINITION 编写包含该类型的所有对象的脚本 放下它们 重新创建具有新长度的类型 重新创建对
  • 在 v21 中设置 AppCompatButton 的样式,使其没有阴影且角半径为零

    我在 XML 布局中定义了一个 AppCompatButton 并为其设置了一个主题 如下所示 android theme style CustomAccentOverlay 我已经设置 android stateListAnimator
  • 为什么“新”运算符使用 -= 来分离事件处理程序?

    为什么我必须使用以下内容来分离事件 object myEvent new MyEvent EventHandler 我有些恼怒new操作员正在工作 有人可以解释一下吗 Update 我已经知道我不必使用 new 运算符来分离事件 但它仍然是
  • 用于自然语言处理的 Java 或 Python [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我想知道哪种编程语言更适合自然语言处理 Java or Python 我发现了很多有关它的问题和答案 但我仍然迷失于选择使用哪一个 我想知道 Java 使用哪个 NLP 库 因为有很多库
  • 如何将 .net 错误消息语言更改为英语

    我使用的是VS2012 net 4 5和Win7专业版 Win7 是土耳其语 现在我收到土耳其语的错误消息 在Win7专业版中无法安装 卸载语言包 是否可以在不重新安装 VS 或 net pack 的情况下更改错误消息语言 这对我有用 开始
  • 通过连接键来展平地图

    给定一个仅包含关键字键的嵌套映射 例如 foo bar 1 baz 2 3 qux quux 4 corge 5 我该如何实施flatten map以便 flatten map foo bar 1 baz 2 3 qux quux 4 co
  • 如何在java中格式化持续时间? (例如格式 H:MM:SS)

    我想使用 H MM SS 等模式来格式化持续时间 以秒为单位 java 中当前的实用程序旨在格式化时间而不是持续时间 如果您不想拖入库 则可以使用格式化程序或相关快捷方式自行完成 例如 给定整数秒数 s String format d 02
  • sizeof 运算符在预处理器 #if 指令中起作用吗?

    我们可以使用sizeof运算符在 if宏 如果是 怎么办 如果没有 为什么 是否sizeof预处理器中的操作员工作 if指令 No the sizeof 运算符在 C 预处理器条件指令中不起作用 例如 if and elif 原因是 C 预
  • 模拟 Guid.NewGuid()

    假设我有以下实体 public class User public int Id get set public string Username get set public Guid UserGuid get set public Guid
  • Laravel 5,查看::分享

    我正在尝试做一个view share current user Auth User 但在 laravel 5 中我找不到在哪里执行此操作 在 L4 中你可以在 baseController 中执行此操作 但那个不再存在 格兰特 格伦 我正在
  • 隐藏表格滚动条

    经过一些研究 我发现我必须设置表格的 tbody display block overflow auto 启用 html 表格上的滚动 是否有可能隐藏每个现代浏览器 Chrome Safari Firefox 上的通用滚动条 我尝试了一些解
  • python请求http响应500(可以在浏览器中访问站点)

    我试图找出我在这里做错了什么 但我总是迷失方向 在 python 2 7 中 我运行以下代码 gt gt gt import requests gt gt gt req requests request GET https www zoma
  • Wix(VS 安装程序)- 缺少编辑器工具栏

    我的电脑上安装了 Wix 3 10 扩展至 Visual Studio 2015 我创建了一个基于 Wix 的安装项目 可以运行 在安装项目中 通常会有一些图标 安装工具 文件系统 注册表 UI 服装操作 但它们目前缺失 您可以在任何 Wi
  • 如何从 Firefox 插件执行 Windows 命令?

    如何使用 Firefox 插件执行 Windows 命令并显示其输出 例如 ping www stackoverfow com 我只是想通过执行打包在一起的二进制文件 或 可执行文件或运行 Windows 命令来探索更多 Firefox 插