次の方法で共有


ApplicationManager (BizTalk Server サンプル)

ApplicationManager サンプルでは、管理オブジェクトを使用して BizTalk アプリケーションを開始または停止する方法を示します。

前提条件

  • このサンプルの管理オブジェクトを使用するには、BizTalk Server管理特権が必要です。

  • Windows PowerShell スクリプトを実行するには、Windows PowerShell 実行ポリシーが必要です。 詳細については、「about_Execution_Policies」を参照してください。

このサンプルの処理

このサンプルでは、Microsoft.BizTalk.ExplorerOM 名前空間の BtsCatalogExplorer クラスと Application クラスを使用して、展開された BizTalk アプリケーションを開始および停止する方法を示します。 このサンプルは、Microsoft Visual C# で記述されています。 このトピックには、Windows PowerShell のスクリプト例も含まれています。 このサンプルは次の操作を示します。

  • BtsCatalogExplorer クラスを使用して BizTalk 管理データベースに接続します。

  • アプリケーション名に基づいて BtsCatalogExplorer からアプリケーション インスタンスを見つける。

  • アプリケーションの開始コマンドまたは停止コマンドを実行する。

このサンプルの場所

このサンプルは、SDK がある次の場所にあります。

<サンプル パス>\管理\ExplorerOM\ApplicationManager

次の表は、このサンプルのファイルとその目的を示しています。

ファイル 説明
Program.cs このサンプルで示す操作用の Visual C# ソース ファイル。
ApplicationManager.sln、ApplicationManager.csproj、ApplicationManager.suo このサンプルのソリューション ファイルとプロジェクト ファイル。

このサンプルのビルドおよび実行

このサンプルをビルドする

  1. Visual Studio で、ソリューション ファイル ApplicationManager.sln を開きます。

  2. [ビルド] メニューの [ソリューションのビルド] をクリックします。

このサンプルを実行する

  1. コマンド ウィンドウを開き、次のフォルダーに移動します。

    <サンプル パス>\管理\ExplorerOM\ApplicationManager\bin\Debug

  2. 次の 2 つのコマンドライン引数を順番どおりに指定して、ApplicationManager.exe ファイルを実行します。

    • <start|stop> First 引数は、デプロイされたアプリケーションで実行される操作です。

    • <ApplicationName> Second 引数は、デプロイされたアプリケーションの名前です。

      次に例を示します。

      ApplicationManager.exe stop MyBizTalkApp
      

    一部のコマンドライン パラメーターのみを指定してサンプルを実行すると、使用する構文が表示されます。 次に例を示します。

    Usage:
    
    ApplicationManager <start|stop> <Application Name>
    
    Where:
      <Application Name> = The name of the application that needs to be changed
    
    Example: ApplicationManager start Application1
    

Windows PowerShell スクリプトの例

次のWindows PowerShellスクリプト フラグメントを使用して、ExplorerOM クラスの同じ機能を示すことができます。

#=== Make sure the ExplorerOM assembly is loaded ===#

[void] [System.reflection.Assembly]::LoadWithPartialName("Microsoft.BizTalk.ExplorerOM")

#=== Connect the BizTalk Management database ===#

$Catalog = New-Object Microsoft.BizTalk.ExplorerOM.BtsCatalogExplorer
$Catalog.ConnectionString = "SERVER=.;DATABASE=BizTalkMgmtDb;Integrated Security=SSPI"

#=== Loop through applications in the catalog trying to find a name match ===#

foreach($app in $Catalog.Applications)
{
    if ($($app.Name) -ieq $args[1])
    {

        #=== The first command-line argument should be "start" or "stop" ===#

        if ($args[0] -ieq "start")
        {
            Write-Host `r`nIssuing start command to $app.Name...`r`n
            $app.Start([Microsoft.BizTalk.ExplorerOM.ApplicationStartOption] "StartAll")
            $Catalog.SaveChanges()
        }

        if ($args[0] -ieq "stop")
        {
            Write-Host `r`nIssuing stop command to $app.Name...`r`n
            $app.Stop([Microsoft.BizTalk.ExplorerOM.ApplicationStopOption] "StopAll")
            $Catalog.SaveChanges()
        }

    }
}

スクリプトでは、Visual C# サンプルと同じコマンド ライン引数が必要です。 Windows PowerShell スクリプトを実行して、展開されている BizTalk アプリケーションを開始する例を次に示します。

PS C:\> .\ApplicationManager.ps1 start MyBizTalkApp

Issuing start command to MyBizTalkApp ...

参照

Admin-ExplorerOM (BizTalk Server Samples フォルダー)