FC2ブログ

Snow Leopard互換性情報

Mac OS X 10.6 Snow Leopardにおける当サイトのツールの互換性の情報を集めるためのエントリーです。現在わかっている問題点を記載します。当面の間,このエントリーを随時更新します。AppleScriptとSnow Leopardについてのコメント,トラックバックも大歓迎です。
・OsiriX Helper 1.11がSafari 4から呼び出せません。拡張URL Schemeの取り扱いがかわったためです。対応バージョンは近日中にリリースしますが,それにあわせてファイルメーカーからweb共有で利用するデータベースにも修正を加える必要があるでしょう。
 → OsiriX Helper 1.2で対応しました。

・スクリプトアプリケーションとアプリケーションが利用するスクリプト共有ライブラリの間の通信が一部でうまくいっていません。そのため,ネットワークインストーラをはじめとするいくつかの機能が正しく動作しません。これにより,MPEG Exporter TNGを含めてほとんどのソフトウエアのアップデートがうまくいきません。アップデート後のアプリケーションも,ライブラリとの通信がうまくいかないため正しく動作しないことがあります。
これは,スクリプトが「my application」で指定されるスクリプトと通信できなくなっているためです。アプリケーションそのものは以前と同じでもそのような問題が起きているため,AppleScriptを実行するしくみそのものが大きく変更されたためと考えられますが,詳細はAppleからも発表されていません。AppleScriptにとってはSystem 7以来の大変革だと思われますが,AppleScriptの世界でもほとんど話題にされていません。
たとえば,漢字Talk 7.5からOS X Leopardまでは,以下のスクリプトはスクリプトエディタ上で実行するとエラーになりますが,アプリケーションとして保存してから実行すると正しくダイアログが表示されます。

スクリプトエディタで開く

しかしこのスクリプトアプリケーションをSnow Leopardで実行すると,スクリプトエディタ上で実行した場合と同じエラーが発生します。
 → MPEG Exporter TNG 2.71で対応しました。

・QuickTime Xについては,スクリプトから利用できる機能がほとんど削られてしまい,機能的には縮小されています。当サイトのツールは基本的にQuickTime Xでは動作しないため,オプション扱いのQuickTime 7がインストールされているかどうかを確認し,インストールされていればQuickTime 7を自動的に立ち上げるパッチを作成しました。ただし,このパッチを配布する予定だったネットワークインストーラが前述の通り正しく動作していません。この問題を解決するためには,Leopard以前でネットワークインストーラを適用したアプリをSnow Leopardにコピーするという方法が考えられます。
 → QuickTime Plug-in 3.8で対応しました。
テーマ: ソフトウェア | ジャンル: コンピュータ

コメント

PPC G3対応について

新しく導入されたSnow Leopard 64ビットモード対応のスクリプトアプリケーションは,PowerPC G3機で実行できないようです。
アプリケーションバンドル内の
/Contents/MacOS/droplet
を古いバージョンのものに入れ替えることで,PowerPC G3機でも実行できるようになります。
この場合,Snow Leopardであっても32ビットモードでしか起動しなくなります。
配布中のMET 2.71には古いバイナリを同梱してあるので,これをdropletにリネームすることでPowerPC G3機でも実行できるようになります。

  • 2009/11/24 (Tue) 23:22
  • 管理人 #-
  • URL
64ビットモードと32ビットモード

Snow Leopardにおいての一連の問題は,64ビットモードでアプリケーションを起動した場合にのみ見られるようです。
MET 2.7はSnow LeopardのScript Editorが書き出すアプリケーションのバイナリを使用しています。この中にはUniversal Binary形式としてPowerPC(サポートする世代が不明),intel 32ビット,intel 64ビットのコードが含まれますが,intel 64ビットは挙動が他のコードと異なり,何らかのproxyかdaemonのようなものがスクリプトを実行する様な仕組みになっていると予想されます。

  • 2009/10/10 (Sat) 15:03
  • 管理人 #-
  • URL
ライブラリの読み込み障害

Snow Leopardへの対応とは別に、ライブラリの読み込みの方式の見直しをしていました。
ところが、MET 2.7以降で採用した新しいライブラリ読み込み方式がSnow Leopardで正しく動作していない可能性があります。
また、OsiriX Helper 1.2も同じ方式を採用しているので、通常の動作に問題はありませんが、ネットワークインストーラが利用できない可能性があります。

  • 2009/10/03 (Sat) 13:32
  • 管理人 #-
  • URL
ネットワークインストーラの対応完了

ネットワークインストーラのSnow Leopard対応が完了しました。
ネットワークインストーラを利用するすべてのアプリケーションに対してアップデートの通知を発行しました。

  • 2009/10/01 (Thu) 19:36
  • 管理人 #-
  • URL
Re:

ご指摘ありがとうございます。
ハンドラの名前は単なる書き間違えなのですが,これを正しくしてもSnow Leopard上ではやはり動作しないと思います。
この例では問題を単純化するために一つのスクリプトの中で呼ぶ側と呼ばれる側を同時に記述していますが,問題は,実際にはこれをスクリプトアプリケーションとスクリプトライブラリの間でやりとりしていることです。
このような場合,meだとスクリプトオブジェクトそのものを意味してしまうので,異なった結果が返ってしまいます。
スクリプト間のイベントによる通信がAppleScriptの基礎技術でもあり,それが使えなくなると問題があるのです。
実際,ネットワークインストーラが正しく動作しないのは,アプリケーションがネットからダウンロードして実行するインストーラスクリプトが,それを実行しているアプリケーションの名称や,アプリケーションが必要としているライブラリのリストを取得できなくなっているためです。
なお,この問題はLeopard以前のシステムでは発生しません。

  • 2009/09/28 (Mon) 23:25
  • 管理人 #-
  • URL

掲載されたサンプルスクリプトなんですが、ハンドラの名前を書き間違えてます。
あと、「~ of my application」を「~ of me」にするとスプリクトエディタでも動きました。
当方、OS10.5.7

  • 2009/09/28 (Mon) 13:33
  • edm2 #Qhkulfr2
  • URL

コメントの投稿


管理者にだけ表示を許可する