尝试分配aDefaultGroupId

时间:2014-06-17 21:30:36

标签: c++ windows-7 firefox-addon xpcom

Firefox在C ++中使用this source code分配defaultGroupId

通过XPCOM我可以这样得到它:

Cc["@mozilla.org/windows-taskbar;1"].getService(Ci.nsIWinTaskbar).defaultGroupId;

我也可以使用nsIWinTaskbar服务进行设置,但每次打开窗口时都必须这样做。

因此,基本上每当窗口打开时,它都会以DEFAULT组ID开启。

我想更改defaultGroupId。这可能吗?我的另一种方法是在打开时设置每个窗口的组ID,这是一种密集型,因此我想避免:(

1 个答案:

答案 0 :(得分:1)

首先,defaultGroupId实际上并未分配。它本质上是一个getter属性,每次访问它时都会重新计算。 因此您无法重新分配

您可以覆盖/代理整个服务,但这也不起作用,因为该方法也会在某些地方直接调用,绕过您提供的备用XPCOM实现。所以你不能覆盖它。

您不希望修补进程内存,因为这将是一个非常大的黑客,它会在未来的版本中突然爆炸。

所以不,你不能覆盖/重新分配默认值。