スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

2006.12.15

OpenApplicationWithURI()

Firefox 2 から OpenApplicationWithURI() というメソッドが追加されている。

/**
 * Opens an application with a specific URI to load.
 * @param   application
 *          The application file (or bundle directory, on OS X)
 * @param   uri
 *          The uri to be loaded by the application
 */
void openApplicationWithURI(in nsILocalFile aApplication, in ACString aURI);

[mozilla1.8/browser/components/shell/public/nsIShellService.idl]

名前の通り、このメソッドで他のアプリに URL を渡す事が出来るようだ。

以前に書いた「鳥獣保護区 | Firefox で開いているページを Safari で開く」では、外部コマンドの open を使って Safari に URL を渡していた。

var open_cmd = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
open_cmd.initWithPath("/usr/bin/open");
var process = Components.classes["@mozilla.org/process/util;1"].createInstance(Components.interfaces.nsIProcess);
process.init(open_cmd);
var args = ["-a", "Safari", aURI.spec];
process.run(false, args, args.length);

これが Firefox 2 からは外部コマンドを使わなくても可能に。

var safari = Components.classes["@mozilla.org/file/local;1"].createInstance(Components.interfaces.nsILocalFile);
safari.initWithPath("/Applications/Safari.app");
var ss = Components.classes["@mozilla.org/browser/shell-service;1"].getService(Components.interfaces.nsIShellService_MOZILLA_1_8_BRANCH);
ss.openApplicationWithURI(safari, aURI.spec);
関連記事

この記事へのトラックバックURL
http://wildlifesanctuary.blog38.fc2.com/tb.php/142-26a4b4f3
この記事へのトラックバック
この記事へのコメント
 
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。