Delen via


ServiceModel Registration Tool (ServiceModelReg.exe)

Dit opdrachtregelprogramma biedt de mogelijkheid om de registratie van WCF- en WF-onderdelen op één computer te beheren. Onder normale omstandigheden hoeft u dit hulpprogramma niet te gebruiken, omdat WCF- en WF-onderdelen worden geconfigureerd wanneer ze worden geïnstalleerd. Maar als u problemen ondervindt met de activering van de service, kunt u proberen de onderdelen te registreren met behulp van dit hulpprogramma.

Syntax

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

Opmerkingen

U vindt het hulpprogramma op de volgende locatie:

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

Notitie

Wanneer het Hulpprogramma voor servicemodelregistratie wordt uitgevoerd op Windows Vista, wordt in het dialoogvenster Windows-onderdelen mogelijk niet weergegeven dat de optie Http-activering van Windows Communication Foundation onder Microsoft .NET Framework 3.0 is ingeschakeld. U kunt het dialoogvenster Windows-onderdelen openen door op Start te klikken, vervolgens op Uitvoeren te klikken en vervolgens OptioneleFuncties te typen.

In de volgende tabellen worden de opties beschreven die kunnen worden gebruikt met ServiceModelReg.exe.

Optie Beschrijving
-ia Installeert alle WCF- en WF-onderdelen.
-ua Hiermee verwijdert u alle WCF- en WF-onderdelen.
-r Herstelt alle WCF- en WF-onderdelen.
-i Installeert WCF- en WF-onderdelen die zijn opgegeven met –c.
-u Hiermee verwijdert u WCF- en WF-onderdelen die zijn opgegeven met –c.
-c Installeert of verwijdert een onderdeel:

- httpnamespace – HTTP-naamruimtereservering
- tcpportsharing – SERVICE voor het delen van TCP-poorten
- tcpactivering : TCP-activeringsservice (niet ondersteund op .NET 4-clientprofiel)
- namedpipeactivation – Named pipe activation service (niet ondersteund op .NET 4 Client Profile
- msmqactivation – MSMQ-activeringsservice (niet ondersteund op .NET 4-clientprofiel
- etw : ETW-gebeurtenistraceringsmanifesten (Windows Vista of hoger)
-q Stille modus (alleen logboekregistratie van fouten weergeven)
-v Uitgebreide modus.
-nologo Hiermee onderdrukt u het copyright- en bannerbericht.
-? Help-tekst weergeven

De FileLoadException-fout oplossen

Als u eerdere versies van WCF op uw computer hebt geïnstalleerd, krijgt u mogelijk een FileLoadFoundException foutmelding wanneer u het hulpprogramma ServiceModelReg uitvoert om een nieuwe installatie te registreren. Dit kan zelfs gebeuren als u handmatig bestanden uit de vorige installatie hebt verwijderd, maar de machine.config-instellingen intact hebt gelaten.

Het foutbericht ziet er ongeveer als volgt uit.

Error: System.IO.FileLoadException: Could not load file or assembly 'System.ServiceModel, Version=2.0.0.0, 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=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'  

U moet in het foutbericht zien dat de assembly System.ServiceModel versie 2.0.0.0 is geïnstalleerd door een vroege CTP-release (Customer Technology Preview). De huidige versie van de System.ServiceModel-assembly die is uitgebracht, is in plaats daarvan 3.0.0.0. Daarom treedt dit probleem op wanneer u de officiële WCF-release wilt installeren op een computer waarop een vroege CTP-release van WCF is geïnstalleerd, maar niet volledig is verwijderd.

ServiceModelReg.exe kan geen eerdere versievermeldingen opschonen en kan ook de vermeldingen van de nieuwe versie niet worden geregistreerd. De enige tijdelijke oplossing is om machine.config handmatig te bewerken. U kunt dit bestand vinden op de volgende locatie.

%windir%\Microsoft.NET\Framework\v2.0.50727\config\machine.config

Als u WCF uitvoert op een 64-bits computer, moet u hetzelfde bestand ook op deze locatie bewerken.

%windir%\Microsoft.NET\Framework64\v2.0.50727\config\machine.config

Zoek alle XML-knooppunten in dit bestand die verwijzen naar 'System.ServiceModel, Version=2.0.0.0', verwijder ze en eventuele onderliggende knooppunten. Sla het bestand op en voer het opnieuw uit ServiceModelReg.exe lost dit probleem op.

Voorbeelden

In de volgende voorbeelden ziet u hoe u de meest voorkomende opties van het hulpprogramma ServiceModelReg.exe gebruikt.

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