これは簡単なことかもしれませんが、私には理解できません。Javascript で行うように、extendscript からメイン ブラウザで Web ページを開くにはどうすればよいwindow.open()
ですか?
After Effects をターゲットにしており、OS X と Windows の両方で動作するようにしたいと考えています。
これは簡単なことかもしれませんが、私には理解できません。Javascript で行うように、extendscript からメイン ブラウザで Web ページを開くにはどうすればよいwindow.open()
ですか?
After Effects をターゲットにしており、OS X と Windows の両方で動作するようにしたいと考えています。
After Effects では、Dirk が述べたように、システム オブジェクトを使用して簡単に実行できます。ただし、そのためにはいくつかのものが必要です。
スクリプトがネットワークにアクセスできることを確認します。
if (app.preferences.getPrefAsLong("Main Pref Section", "Pref_SCRIPTING_FILE_NETWORK_SECURITY") != 1)
{
alert("Please tick the \"Allow Scripts to Write Files and Access Network\" checkbox if Preferences > General");
// Then open Preferences > General to let people tick the checkbox
app.executeCommand(2359);
// Here you should check again if they ticked it, and choose to continue or stop ...
}
OSのチェック:
var os = system.osName;
if (!os.length)
{
// I never remember which one is available, but I think $.os always is, you'll have to check
os = $.os;
}
app_os = ( os.indexOf("Win") != -1 ) ? "Win" : "Mac"
OS 依存のシステム コール:
var url = "http://aescripts.com";
if ( app_os == "Win" )
{
system.callSystem("explorer " + url);
}
else
{
system.callSystem("open " + url);
}
CSInterface.js にアクセスできる場合:
cep.util.openURLInDefaultBrowser("http://www.google.com")
ローカル コンピューターで何でも実行できます (コマンドラインや VBS ファイル内のその他の操作)。また、次のように JavaScript から vbs ファイルを起動できます。
function RunScriptVBS(whatscriptname){
app.doScript(File(whatscriptname), ScriptLanguage.VISUAL_BASIC);
}
vbs スクリプトは次のとおりです。
Dim objShell
Set objShell = CreateObject("WScript.shell")
objShell.Run ("http://www.somewhere.com")
set objShell = nothing
質問の範囲は明らかに After Effects (AE) に絞り込まれているため、そのアプリケーションに固有の別の回答を追加します。
私のマシンでは、AE CS6 は、ExtendScript Toolkit で表示するためのオブジェクト モデル ファイルを生成しません。オブジェクト モデル ビューアは ESTK のヘルプ メニューにあります。
とにかく、ESTK データ ブラウザは機能します。AE をターゲットにすると、いくつかのオブジェクトとクラスが表示されます。最終的に、databrowser パネルのフライアウト メニューでさらにいくつかのメニュー項目を確認します。app オブジェクト自体 (そこには openUrl() はありません) を詳しく調べたところ、「システム」オブジェクトも見つかりました。それを展開すると、いくつかの興味深い方法が表示されます。
次のスクリプトは、Mac で URL を開きます。私はWindowsを試していませんが、おそらく同じです。
system.callSystem("open http://www.google.com")
AfterEffects を起動するのはこれが初めてなので、より良い方法を見逃している可能性があります。