2013-09-25 56 views
0

我想以Thunderbird擴展程序的私人模式打開URL。現在,下面的代碼在「標準」非私人模式下工作:從Thunderbird擴展程序以隱私模式打開瀏覽器

try { 
    var eps = Components.classes["@mozilla.org/uriloader/external-protocol-service;1"]. 
    getService(Components.interfaces.nsIExternalProtocolService); 
    var ios = Components.classes["@mozilla.org/network/io-service;1"]. 
    getService(Components.interfaces.nsIIOService); 
    eps.loadURI(ios.newURI("http://www.example.com", null, null)); 
} catch (err) {} 

任何想法如何在私人模式下實現相同的結果?我有興趣將它作爲默認瀏覽器啓動Chrome。 (再次,Chrome使用上面的代碼正確啓動)。

回答

1

你真的不能在私人窗口AFAIK中使用新的URL來啓動Firefox。 -private-window <url>將打開一個新的私人窗口,但仍將新選項卡放入正常窗口中。

Chrome可以使用chrome --incognito <url>啓動,但是您需要通過nsIProcess自己啓動,因此首先必須找出chrome二進制文件的位置。

如果你能保證默認的處理程序是Chrome瀏覽器,那麼你可能會使用nsIExternalProtocolService.getProtocolHandlerInfo(),使用preferredApplicationHandlerQueryInterface,爲nsILocalHandlerApp找到.executable。否則,你將不得不自己處理操作系統和/或已知路徑。

相關問題