ServiceModel 登録ツール (ServiceModelReg.exe)ServiceModel Registration Tool (ServiceModelReg.exe)

このコマンド ライン ツールは、単一コンピューター上で WCF および WF コンポーネントの登録を管理するための機能を提供します。This command-line tool provides the ability to manage the registration of WCF and WF components on a single machine. WCF および WF コンポーネントはインストール時に構成されるため、通常の状況ではこのツールを使用する必要はありません。Under normal circumstances you should not need to use this tool as WCF and WF components are configured when installed. しかし、サービスのアクティブ化に関する問題が発生する場合は、このツールを使用してコンポーネントを登録できます。But if you are experiencing problems with service activation, you can try to register the components using this tool.


ServiceModelReg.exe[(-ia|-ua|-r)|((-i|-u) -c:<command>)] [-v|-q] [-nologo] [-?]  


ツールは次の場所にあります。The tool can be found in the following location:

%SystemRoot%\Microsoft.Net\Framework\v3.0\Windows Communication Foundation\%SystemRoot%\Microsoft.Net\Framework\v3.0\Windows Communication Foundation\


ServiceModel 登録ツールを実行するときにWindows VistaWindows VistaWindows の機能のダイアログことが反映されない、 Windows Communication Foundation HTTP Activation 下のオプションMicrosoft .NET Framework 3.0がオンになっています。When the ServiceModel Registration Tool is run on Windows VistaWindows Vista, the Windows Features dialog may not reflect that the Windows Communication Foundation HTTP Activation option under Microsoft .NET Framework 3.0 is turned on. Windows の機能のダイアログをクリックしてアクセスできる開始、順にクリックして実行」と入力し、 OptionalFeaturesです。The Windows Features dialog can be accessed by clicking Start, then click Run and then typing OptionalFeatures.

次の表は、ServiceModelReg.exe で使用できるオプションを示します。The following tables describe the options that can be used with ServiceModelReg.exe.

オプションOption 説明Description
-ia WCF および WF のすべてのコンポーネントをインストールします。Installs all WCF and WF components.
-ua WCF および WF のすべてのコンポーネントをアンインストールします。Uninstalls all WCF and WF components.
-r WCF および WF のすべてのコンポーネントを修復します。Repairs all WCF and WF components.
-i -c で指定された WCF および WF のコンポーネントをインストールします。Installs WCF and WF components specified with –c.
-u -c で指定された WCF および WF のコンポーネントをアンインストールします。Uninstalls WCF and WF components specified with –c.
-c コンポーネントをインストールまたはアンインストールします。Installs or uninstalls a component:

-httpnamespace – HTTP Namespace 予約- httpnamespace – HTTP Namespace Reservation
-tcpportsharing – TCP ポート共有サービス- tcpportsharing – TCP port sharing service
-tcpactivation – TCP のアクティブ化サービス (.NET 4 クライアント プロファイルでサポートされていません)- tcpactivation – TCP activation service (unsupported on .NET 4 Client Profile)
-namedpipeactivation-名前付きパイプのアクティブ化サービス (.NET 4 クライアント プロファイルでサポートされていません- namedpipeactivation – Named pipe activation service (unsupported on .NET 4 Client Profile
(.NET 4 クライアント プロファイルでサポートされていません - msmqactivation – MSMQ アクティブ化サービス- msmqactivation – MSMQ activation service (unsupported on .NET 4 Client Profile
-etw – ETW イベントの追跡マニフェスト (Windows Vista またはそれ以降)- etw – ETW event tracing manifests (Windows Vista or later)
-q Quiet モード (エラー ログのみ表示)Quiet mode (only display error logging)
-v Verbose モードVerbose mode.
-nologo 著作権やバナー メッセージを表示しません。Suppresses the copyright and banner message.
-? ヘルプ テキストを表示します。Displays help text

FileLoadException エラーの修正Fixing the FileLoadException Error

取得することがあります、コンピューターに WCF の以前のバージョンをインストールした場合、FileLoadFoundException新規インストールを登録する ServiceModelReg ツールを実行するとエラーが発生します。If you installed previous versions of WCF on your machine, you may get a FileLoadFoundException error when you run the ServiceModelReg tool to register a new installation. 旧バージョンのインストールから手動でファイルを削除しても、machine.config 設定が元のままである限り、このエラーが発生する可能性があります。This can happen even if you have manually removed files from the previous install, but left the machine.config settings intact.

エラー メッセージは、次のようになります。The error message is similar to the following.

Error: System.IO.FileLoadException: Could not load file or assembly 'System.ServiceModel, Version=, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)  
File name: 'System.ServiceModel, Version=, Culture=neutral, PublicKeyToken=b77a5c561934e089'  

System.ServiceModel Version アセンブリが旧 CTP (Customer Technology Preview) リリースによってインストールされていたというエラー メッセージに注目する必要があります。You should note from the error message that the System.ServiceModel Version assembly was installed by an early Customer Technology Preview (CTP) release. 最新バージョンの System.ServiceModel アセンブリは、 ではなく です。The current version of the System.ServiceModel assembly released is instead. そのため、WCF の以前の CTP リリースがインストールされも完全にアンインストールをコンピューターに正式な WCF リリースをインストールするときに、この問題が発生します。Therefore, this issue is encountered when you want to install the official WCF release on a machine where an early CTP release of WCF was installed, but not completely uninstalled.

ServiceModelReg.exe は、旧バージョンのエントリをクリーンアップすることも、新しいバージョンのエントリを登録することもできません。ServiceModelReg.exe cannot clean up prior version entries, nor can it register the new version's entries. 唯一の回避策は、machine.config を手動で編集することです。このファイルは次の場所にあります。The only workaround is to manually edit machine.config. You can locate this file at the following location.


64 ビット コンピューターで WCF を実行している場合は、またこの場所に同じファイルを編集する必要があります。If you are running WCF on a 64-bit machine, you should also edit the same file at this location.


このファイルを参照する XML ノードを見つけ"'system.servicemodel, Version を ="、および子ノードを削除します。Locate any XML nodes in this file that refer to "System.ServiceModel, Version=", delete them and any child nodes. ファイルを保存し ServiceModelReg.exe を再実行すると、この問題は解決します。Save the file and re-run ServiceModelReg.exe resolves this problem.


次の例に、ServiceModelReg.exe ツールの最も一般的なオプションの使用方法を示します。The following examples show how to use the most common options of the ServiceModelReg.exe tool.

ServiceModelReg.exe -ia  
  Installs all components  
ServiceModelReg.exe -i -c:httpnamespace -c:etw  
  Installs HTTP namespace reservation and ETW manifests  
ServiceModelReg.exe -u -c:etw  
  Uninstalls ETW manifests  
ServiceModelReg.exe -r  
  Repairs an extended install