IShockwaveFlash
IE用のFlashPlayerプラグインをインストールすると、ActiveXコントロール版のFlashPlayerがインストールされます。 IEはActiveXによる拡張の仕組みを用いてFlashに対応します。 それはさておき、ActiveXコントロールということは、これを拝借して自作のソフトウェアへの貼り付けが可能? 憧れのFlashを手の内で再生できてしまうのか? このようなことを考えてしまったなら最後、試さずにはいられない。 ひっっっさしぶりにVC++を起動してごりごりコードを書き始める。
ProgIDが“ShockwaveFlash.ShockwaveFlash”のコントロールを作る。 COMインターフェース名は“IShockwaveFlash”。 こいつのラッパをATL任せで作って、ああして、こうして。 あとは、ウィンドウのサイズ変更で中身も伸び縮みするように工夫。 結局、MFCの雛型から追加したコードは20行程度か?
これで動いたら驚くほど拍子抜けだよなぁ。 とにかく、ビルド&ラン。 ・・・動いた。 動作の様子は右上の画像。 (注: ピカチュウは関係ありません) いくらなんでも簡単すぎ!! はてさてそうですか。 あとは、ライセンスの問題ですね。 つまり、こうして作られたソフトウェアを世に出してもいいのかどうか。 確認したところ特に問題はなさそうです。 もちろん、配布パッケージにFlashPlayerを含めてはいけません。 別途DLしていただく形式になるでしょう。
この後さらに、一切のコードを書かずにFlashを貼り付ける方法が発覚。 しかも、その方法だとソフトウェアの中にFlashのファイルを埋め込むこともでき、まさに至れり尽くせり。
さて、できることがわかった以上は、使ってみたくなるのが人のサガ。 調子に乗ってグッズ制作なんかやりたいなぁ。 とはいっても、本件でできることといえばスクリーンセーバくらいですけど。 恐ろしく簡単に作れてしまうのでお手軽ですね。 実は探せばswfからscrへ変換する類いのツールは結構あるのですが、どれもいまひとつ、的を射たものが見つからない。 なので、この際ですからこの手には頼らずに作ってしまいましょう。 以上、某人宛の業務連絡でした。