2011-07-15 103 views
3

我目前有一個url,看起來像這樣:protocol://folder/file.js如何使瀏覽器從自定義協議打開文件?

我可以從我的本地磁盤使用類似file:// C:\ folder \ file這樣的URL打開同一個文件。 JS

當應用程序在其自己提供的環境中運行,該協議有效,並且加載該文件從我的本地磁盤就好了。

我想也能當我運行一個常規瀏覽器如Firefox或Chrome這裏面的應用程序訪問這些文件的時間。

我已經成功地在我的Windows機器上註冊該協議和URL轉發到一個定製的C#程序,然後可以再次打開瀏覽器中正確的文件。但是,它會在新選項卡中打開文件,並且在嘗試從頁面上的標記打開文件時似乎無法正常工作。

是否有一個簡單的方法來獲取Firefox(或任何其他瀏覽器)直接在請求它的選項卡中打開從一個自定義的協議文件?

+0

有趣的問題 - 我曾經在手機環境中聽說過這樣的事情,但從來沒有聽說過普通的臺式機。 – Pointy

回答

3

在Firefox中做到這一點,你必須實現一個XPCOM對象。 C++中有instructions on how to do this。對於C#,您遵循相同的說明,但使用GeckoFX來獲取.NET的包裝。

+0

而且一旦完成,確實爲了使Firefox運行起來,Firefox最終用戶必須安裝一些東西,對吧? – Pointy

+0

@Pointy - 是的。它基本上是一個用戶必須安裝的插件。 – Icemanind

+0

謝謝,這或多或少是我正在尋找的。 –

相關問題