SOLUTIONモトスクウェアソリューションは、システム開発やイラスト制作などのIT関連業務を手掛ける個人事業です。7.5」にアップグレードする際に遭遇した問題とその解決策をご紹介します。以前に作成した「MetroGnome」というアプリをアップグレードしたのですが、なかなかに一筋縄ではいきませんでした...orz。アップグレード」機能を利用すると、既存のプロジェクトをアップグレードすることが可能です。コレクションまたはディクショナリに追加できません。」のような例外が発生する場合があります。わたしが実際にアップグレードしたプロジェクトは、自作のビヘイビアやトリガーアクションなどを格納したライブラリプロジェクトだったのですが、上記のエラーはこれらのビヘイビアやトリガーアクションがアプリ実行時に参照されたときに発生しました。いうことで、結論から申しますと「Microsoft.Expression.Interactions」や「System.Windows.Interactivity」などの参照を一旦削除してから再度登録すると、上記のエラーは解消されました。参照していたアセンブリが古かったみたいです。このようなケースでは、ビルドエラーにならず、実行時にエラーが発生するようですね。アプリケーション」を利用する場合、XNAカテゴリから生成すると日本語のコメントが付加される旨をご紹介しました。対応する終了タグがありません。」のようなエラーが多数発生します。日本語が文字化けしていることを見ると、文字コードが怪しいであろうことはすぐにお判りいただけると思います。いうことで調べてみたところ、上記のプロジェクトでは、日本語でコメントが記載されているファイルがことごとく「UTF-8N」で記述されていました。ファイルの先頭にBOMが付加されていないわけです。BlendはこのBOMがないとファイルの文字コードを「UTF-8」であると識別できないようです。これにより、日本語のコメントがタグごと文字化けしてしまい、今回のエラーが発生してしまいます。このため、サクラエディタなどで「App.xaml」や「Game.xaml」を「BOM付きのUTF-8」で保存してあげれば問題は解決です。それにしても、RC版にしてはちょっと詰めが甘いかも...(ノω<;)その3:既存のスタイルを上書きできない!Silverlightアプリを開発する場合、「App.xaml」や「Generic.xaml」でスタイルを管理するのが一般的です。「MetroGnome」でも「PhoneTextTitle1Style」や「PhoneTextNormalStyle」などの既存のスタイルを、「App.xaml」内で再定義(同一名のスタイルを定義)したりしています。すると、開発時には既存のスタイルを利用し、開発が完了した後に一括してスタイルを変更できるので便利なんですよね~。Silverlight4ではどうやら既存のスタイルを再定義することができないようです。Blendのデザイナではきちんと再定義したスタイルが反映されているのですが、いざアプリを実行すると既定のスタイルが反映されてしまいます。ソースコードでガリガリやれば回避できそうではありますが、今回は時間が惜しかったので、自作したスタイルの名前を変更して対応しました。́・ω・`)残すは不具合修正と公開作業!ということで、あとは細かな不具合を修正して公開するのみです!できれば曲の追加とかもしたいのですが...しばらくはちょっと無理そうかもです(T△T)。Live」ライセンスとなっているため、開発したWP7.5対応アプリをMarketplaceに公開することが可能となりました。次期RTM版で仕様変更が発生した場合は、バージョンアップの手順も保証されます。このRC版は、英語版と共に日本語版が提供されています。本格的に現場レベルで利用可能なビルドとなったわけですね。おまけに、RC版となったことにより、ブログなどに開発環境のスクリーンショットを掲載することも可能になりました!やった~!≧∀≦)ノ日本語対応は...あと一歩!このRC版は、機能面でも色々と改善が見られます。アプリケーション」に統一されました。これらは、プロジェクトを作成する際に、SilverlightとXNAのどちらのカテゴリからも利用することが可能となっています。なると、生成されるプロジェクトも同一なのでしょうか?見てみましょう。ご覧のとおり、生成されるプロジェクトは若干異なるようです。具体的には、XNAカテゴリから生成したプロジェクトは、コメントが日本語で記載されているのに対し、Silverlightカテゴリから生成したプロジェクトは、コメントが英語で記載されています。WPSDK昨日お話ししたWindowsPhone7に関する「ジューシー」なサプライズ...、それは「ベータ版Mangoの配布」と「開発環境のバージョンアップ」の2つのビックニュースでした!ベータ版Mangoの配布!AppHubに登録しており、かつ既に実機を持っている開発者に対して、WindowsPhone7の次期バージョンアップ版であるMangoのベータ版が配布されることが決定されました。...確かにうれしいのですが、その際に秘密保持へ同意する必要がありまして、これによるとスクリーンショットなどの情報を第三者に公開することはできないようです。秘密保持が変更されてスクリーンショットはOKになりましたです!≧∀≦)ノもっとも、今回のMangoは日本語表示もできないようですので、ある意味ではエミュレータの方が多機能といえるかもしれません。このため、技術的な新機能やパフォーマンスの検証といった、本当に開発者向けのものとなりそうです。対象となる開発者には別途アップデート手順を記載したメールが送付されてくるとのことですので、とりあえず気長に待ちましょう。開発環境のバージョンアップ!WP7アプリの開発環境がβ1からβ2にバージョンアップされました。...この期に及んで「β2」とかバージョン刻んでくるあたりに一抹の不安を覚えますが、β1のクオリティが今ひとつでしたのでこれはこれで安心できるかもです(汗。SDK(WPSDK)」に変更されました。リリースノートを見る限りあまり多くの変更点はありませんが、小さな変更や改善がチラホラ見受けられましたので、以下に簡単なレビューを記載します。最新のWPSDKのダウンロードはこちらからどうぞ。Beta2一部のプロジェクトテンプレート名が変更!一部プロジェクトテンプレートの名称が変更されています。生成されるプロジェクトの内容に違いはないようです。以下の後者に至っては作成される既定のプロジェクト名まで昔のままです。そこも直しておいてほしかったにゃ。Ammalysis」を利用することはできませんでした。今回のβ2からはそれが可能になりました。実のところ、SL+XNAの肝であるUIElementRenderクラスは、使い方を誤ると簡単にメモリリークしてしまいますので、この対応は非常に嬉しい限りです。このように、β1では一部できなかったことがβ2で平然とできるようになっている...という感じの変更が多いように感じます。他にも、キーボードの種類が追加されていていて、日本語でのQWARTY入力が可能になっていたりします。タスクの切り替え機能などは相変わらず使用できません。今回のβ2でも一部機能は未実装のままですが、β1で遭遇した不具合らしき現象もすべて解決されていますので、これなら開発にも十分耐えられるレベルに仕上がっていると思います。まとめ!ということで、このタイミングでようやっとMangoに関する表立った動きが出てきました。