以前から作ろう作ろうと思っていたWindows Server 2012 R2 Essentials用アドインの開発に着手し始めました。
と言っても、大層なアドインを作れるだけの知識・経験がないため、まずはWebページを表示するだけの簡単なアドインを開発。
連載2回目は、Windows Server 2012 R2 Essentials用アドインをVisual Studioで開発する手順をメモ。
と言っても、大層なアドインを作れるだけの知識・経験がないため、まずはWebページを表示するだけの簡単なアドインを開発。
連載2回目は、Windows Server 2012 R2 Essentials用アドインをVisual Studioで開発する手順をメモ。
ゴール
今回は、下記アドインを開発します。
- Windows Server Essentials ダッシュボードにトップ レベル タブを配置する
- サブ タブ ページにWebページを表示する
- Webページは、Microsoft Azure ポータルとする
下記画像は、開発したアドインのスクリーンショットです。
アドインの開発手順
プロジェクトを新規作成
Visual Studioを開き、プロジェクトを新規作成します。[テンプレート]→[Visual C#]→Windows Server Essentials]→[Dashboard]を選択します。
次に、[WSS Top-Level Tab with Winforms Control]を選択し、名前は「WssAzurePortal」とします。
TopLevelTab.csを変更
[ソリューション エクスプローラー]の[TopLevelTab.cs]を開きます。ここでは3点変更します。
- (念のため)GUIDを変更
- タイトルを変更
- タイトルの説明文を変更
SubTabPage.csを変更
次は、[SubTabPage.cs]を開きます。トップ レベル タブと同様の変更を行います。
- (念のため)GUIDを変更
- (念のため)タイトルを変更
- (念のため)説明文を変更
※今回開発するアドインはWebページを表示するだけですので、[SubTabPage.cs]の変更内容は無意味かもしれません。
WinformにWebBrowser コントローラーを追加
[ソリューション エクスプローラー]の[MyCustomWinformControl]フォルダーにある[MyCustomWinformControl.cs]を右クリックし[デザイナーを表示]を選択、又は同ファイルをダブル クリックします。
フォーム サイズを適当な大きさに変更します。[ツールボックス]の検索ボックスに[web]と入力し、[WebBrowser]コントロールを検索します。
表示されたら、[WebBrowser]コントロールをフォームにドラッグ&ドロップします。
コントロール右上の▶をクリックし、[親コンテナーにドッキングする]をクリックします。
クリックすると、コントローラーのサイズがフォーム サイズと同じになります。
WebBrowser コントローラーにURLを指定
WebBrowser コントローラーのナビゲート先であるURLを指定します。今回のゴールは、Microsoft Azure ポータルを表示させる事ですからURLは
https://manage.windowsazure.comを指定します。
addin ファイルを設定
[ソリューション エクスプローラー]の[WssAzurePortal.addin]を開きます。
変更する箇所は、basedir属性値のみです。
既定値は[FULL_PATH_TO_YOUR_PAGE_PROVIDER_BINARY_DLL]となっています。
この値をDLLを配置するパスを指定します。
今回は、Windows Server 2012 R2 Essentialsの
%ProgramFiles%\Windows Server\Bin\Addins\MyAddinDLLs
WssAzurePortal.dllの配置先が上記パスになります。
注意点は、この設定を誤るとWindows Server Essentials ダッシュボードを開いた際にアドインが正しく表示されません。
ビルド
最後に、プロジェクトをビルドします。
[ビルド]→[ソリューションをビルド]をクリックするとビルドが開始されます。
※[Ctrl]+[Shift]+[B]のショートカットでもOKです
出力結果に異常がなければビルドは成功です。
(標準設定では)ファイルは
%USERPROFILE%\Documents\Visual Studio 2013\Projects\WssAzurePortal\WssAzurePortal\bin\Debug(又はRelease)に出力されていると思います。確認してみましょう。
次回は、ビルドしたファイルをWindows Server 2012 R2 Essentialsへ配置します。