ビルド前の準備
開発環境ではCOMコンポーネントへの参照設定を行うため、COMコンポーネントが登録済です。開発エミュレータでスタートアップタスクが正しく機能しているか確認するためには、以下の設定を行う必要があります。この設定により、ビルド時にはCOMコンポーネントが登録されている状態にし、ビルド終了後にはCOMコンポーネントの登録が解除された状態に保ちます。
- 管理者権限のコマンドプロンプトからリスト11を実行して、COMコンポーネントの登録を解除します。
- Webロールのビルドイベントで、ビルド前に実行するコマンドラインに、COMコンポーネントを登録するように構成します(図7)。
- 同じくビルド後に実行するコマンドラインに、COMコンポーネントの登録を解除します(図7)。
regsvr32 /u AzureCOMSample.dll
これでサンプルの作成は終了です。ビルドしてコンパイルエラーが無いことを確認してください。
実行
はじめに開発エミュレータで実行します。図8の通り、テキストボックスに文字列を入力し、ボタンをクリックします。
Azure COM Sample:入力した文字列と表示されれば正常に動作しています。
開発環境での実行が正常に確認できたら、Windows Azureにデプロイし結果を確認します。図9の通り表示されれば正常に動作しています
デプロイ時に前回紹介した「リモートデクトップの設定」を行っておくと、正常に動作しない場合にWindows Azureにログインして調査することが可能です。
例えば、IISが正しく構成されているか確認したい場合は、Azure上でIIS Managerを起動します(図10)。アプリケーションプールから、GUID名がついているものがWebロールのアプリケーションプールです。
[Advanced Settings...]をクリックして、詳細ダイアログを開きます(図11)。Enable 32-Bit ApplicationsがTrueになっていれば正しく構成されています。
あとは、通常とデバッグ同じくregeditコマンドでレジストリを参照し、COMコンポーネントが登録されているか確認したりして問題の切り分けを行うことができます。