ファイルシステムにアクセス可能なRIA
ちょっと興味があったので調べてみた。調べてみたのは以下の3つ。
Adobe AIRのファイルシステムへのアクセス
Adobe AIRはファイルシステムにアクセス可能との触れ込みが一番でかい。http://livedocs.adobe.com/labs/air/1/devappsflex/help.htmlのWorking with files and dataにあるように、ファイルの読み書きやファイルの移動・削除・複製なんかができる。
ただし至極残念なのは、以下の記述。
Will Adobe AIR applications be able to launch default applications for a file type?
No. This feature is not planned for version 1.0.
Adobe Labs | Previews, prereleases and beta software from Adobe
要するに指定したファイルを、ファイルタイプに関連付いたアプリケーションで開かせる、ということができない模様。それができなきゃ魅力半減なんだけどなぁ…。
例えば画像ファイルを開いて、AIR内で表示することは可能だけど、それをペイントで開かせることは無理。残念。ただし各種コンポーネントの使い勝手はよさそうなので、これからも多少注目。
Sun JavaFX
JavaFXはどないかと言いますと、Java6追加されたjava.awt.Desktopクラスを使えば可能。
あまりJavaFXは関係ないっちゃ関係ない。
Java で他のアプリケーションを起動するには、ProcessBuilder クラスを使用しますよね。これはこれでいいのですが、起動するアプリケーションが分からないときがあります。
たとえば、ブラウザ。
たぶん、ブラウザがあることは分かるんだけど IE なのか Firefox なのか Opera なのか、Java のアプリケーションからだとなかなか分からないんですよね。JNI を使えばできるのですが、それはちょっと...
また、普通は MIME タイプごとに起動するアプリケーションが決まっていますが、そのアプリケーションが何かを知りたいわけです。
でも、もうそんな悩みも過去のこと。Java SE 6 を使えば、あっという間にできるのです。
Java SE 6 じゃじゃ馬ならし Desktop
条件はクリアしているけれど、問題はいつ正式版がリリースされるか、ですかねぇ。
Microsoft Silverlight
上記3種類の中で、唯一正式版がリリースされているSilverlight。今日から調べてみたところ。
でも下記の内容が記載されており、さてさて…。
VB On Silverlightの中で、Silverlightで使えるVBの機能、使えないVBの機能という、簡単な一覧が出ているわけです。
http://blog.tk-engineering.com/?eid=634283
使えない機能は…
・My (Alphaにはあったけど、削除)
・XML リテラル (System.XML.Linq が使えないため)
・COM (考えてみれば当たり前)
・FileSystem Object (これまた当たり前)