WS-AtomicTransactionを使用できるように設定した環境はWindows Vistaです。.NETのバージョンは3.0以降がインストールされているとします。
設定環境
- Windows Vista Enterprise
- 要.NET 3.0以上, Windows SDK V6.0以上
1.WS-ATを有効にする
1.1 WsagConfig.exeでやってみる版(失敗)
WS-AtomicTransactionを有効にするためにコマンドラインツールではWsatConfig.exeを使用します。WsatConfigはデフォルトでは%windir%\Microsoft.NET\Framework\v3.0\Windows Communication Foundationフォルダに存在します。フォルダに移動して、次のコマンドを入力するとエラーメッセージが出力されました。
WsatConfig.exe -network:enable -restart

Cannot enable network support because Network DTC Access is disabled, or both Inbound and Outbound communication are disabled.と出力されます。DTC Accessが有効になっていないか、Inbound,Outbound通信が無効になっているとのこと。なのでTechNetの参考に以降の処理を進めます。
1.2 WS-ATのGUIスナップインをインストール
以降の処理で作業が進めやすいように、WS-ATのプロパティをGUIで設定できるようにする方法があるので、そちらを設定します。Widnwos SDK 6のインストールフォルダのbinフィルだにあるスナップインを以下のコマンドでインストールします。パスは環境に合わせて変更して下さい。また、掲載時にはSDKのV6.1がリリースされています。
regasm /codebase C:\Program Files\Microsoft SDKs\Windows\v6.0\Bin\WsatUI.dll
Vistaでは後述するComponent Services管理ツールのプロパティにWS-ATというタブが追加されます。
2.ネットワークDTCアクセスを有効にする
VistaとWindows 2008 Serverの場合は以下のページにしたがってVistaでネットワーク DTC アクセスを有効にします。
ネットワークアクセスを有効にする
http://www.microsoft.com/japan/technet/windowsserver/2008/library/1f6d0a27-533b-4516-8656-b492f1649e9f.mspx?mfr=true
[スタートメニュー]→[Run..](プログラムを指定して実行)でdcomcnfg.exe(またはcomexp.msc)と入力し、Component Services 管理ツールを起動します。Comsole Root→Component Services→My Computer→Distributed Transaction Coordinatorと展開し、Local DTCを右クリックしてプロパティを開き、Securityタブを選択します。

下図のようにNetwork DTC Access,Allow InboundおよびAllow Outboundのチェックボックスにチェックを入れます。[Apply]ボタンを押します。プロパティ画面は閉じません。

Vindows Server 2003の場合DTCアクセスの有効化は以下を参照
http://support.microsoft.com/kb/817064/ja
3. WS-ATを有効にする
2.で表示したLocal DTC Properties画面のWS-ATを選択します。(WS-ATが表示されていない場合は、本ページの1節を参照)

Enable WS-Atomic Transaction network supportにチェックを入れます。ポートをサンプルで使用する8057と入力し、Endpoint certificateのSelectボタンをクリックし、WCF Sample 009 : BasicHttpBindingでトランスポートレベルセキュリティを実装する で作成した証明書を選択します。


Applyボタンをクリックすると、サービスの再起動を行う確認メッセージダイアログがでるので、OKボタンをクリックします。プロパティダイアログのOKボタンで画面を閉じます。
設定は以上です。
さんのコメント: さんのコメント: