vodafone 時代の技術のまま softbank に変わり、初の S!アプリ開発に
取り掛かろうと思ったら、今は Eclipse 環境がほぼ大前提なんですね。
Eclipse はバージョン関連で色々違いが有り、あまり好きじゃないんだけど、
時代はそうも言ってられない。
ある程度把握したらバッチファイル形式に戻ろう。
さて公式サイトのサンプルを動かしたところ、下記エラーが発生してしまった。
java.lang.IllegalArgumentException: check failed. - check at com.jblend.media.core.MediaBuffer.check(+148) at com.jblend.media.core.MediaStorage. |
サンプルソースが起動しないのはどうなの?と思いますが、落ちてる箇所は
phrases[0] = new Phrase("bgm.spf");
上記 Pharese インスタンスを生成しているところで落ちていた。どうも OS 環境
くさいなぁと思い、色々試行錯誤した所… vista が原因だった。
PCゲームや一部のソフトウェアでも、XP互換モードで実行する事で直ることは
よくあるのだが、このエミュレーターも同じだった。
2010/12/25 現在、最新のエミュレーターの方は以下の exe を XPSP2 互換に変換しましょう。
C:\Program Files\SOFTBANK_MEXA_EMULATOR23
上記、デフォルトインストール場所にある
mexa_emulator.exe
を右クリックした後、プロパティを選択。
下記場所を XP SP2 にして「適用」を行う。
その後エミュレーターを Eclipse から起動すればOK!
ちなみに互換モードって WinAPI GetVersionEx() で取得できるOS 名称を
誤魔化すだけ、と聞いたことがあったのだが、ソフトウェアによっては以下の
ように
if( osversion == "WindowsXP" ) → 実際は文字列判定ではなく数字
と XP を前提にしているコードがあるのかもしれない。作り手としては XP が
最新の Windows API を所持しているものとしてみていて、else のときは
Windows 2000 や 9x 系の処理が行われてるのかも。
IE7 が Windows2000 にインストール出来ないように XP からセキュリティ関連
のAPI が充実してきているので、その因果関係?の影響か。
0 コメント:
コメントを投稿