Firefox扩展中的无窗口嵌入式exe

时间:2013-11-15 07:07:44

标签: javascript c++ windows firefox-addon

我开发了一个firefox扩展(附加组件),并在其中嵌入了一个c ++控制台应用程序(.exe)。我将命令行参数传递给该exe,并执行与这些参数关联的一些操作。问题是每当调用该exe时,控制台窗口就会出现并消失。我想要保持沉默。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

我假设你现在正通过nsIProcess实际执行你的可执行文件。不幸的是,nsIProcess没有给你足够的控制来创建进程以避免控制台窗口。

您要么必须修改控制台应用程序本身,要么是“Windows”应用程序而不是“控制台”应用程序(WinMain()main()),或者如果不可能,则为我必须以某种方式用dwCreationFlagsCREATE_NO_WINDOWCreateProcessCreateProcess标记。

后者可以通过以下方式完成:

  • 如果您的附加代码已经是C ++,则直接使用适当的标记调用nsIProcess
  • 使用CreateProcess导入CreateProcess,定义必要的结构并调用它,替换您对CREATE_NO_WINDOW的使用。
  • 使用另一个帮助应用程序,这是一个“Windows”应用程序,它将调用{{1}}以{{1}}启动您的实际应用程序。