Rozwiązywanie problemów z konfiguracją

W tym artykule opisano sposób rozwiązywania problemów z konfiguracją programu Windows Communication Foundation (WCF).

Niektóre klucze rejestru programu Windows Communication Foundation nie są naprawiane przez wykonanie operacji naprawy msi w .NET Framework 3.0

Jeśli usuniesz dowolny z następujących kluczy rejestru:

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelService 3.0.0.0

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelOperation 3.0.0.0

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ServiceModelEndpoint 3.0.0.0

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SMSvcHost 3.0.0.0

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MSDTC Bridge 3.0.0.0

Klucze nie są tworzone ponownie w przypadku uruchomienia naprawy przy użyciu instalatora .NET Framework 3.0 uruchomionego z apletu Dodaj/Usuń programy w Panel sterowania. Aby poprawnie utworzyć te klucze, użytkownik musi odinstalować i ponownie zainstalować .NET Framework 3.0.

Uszkodzenie usługi WMI blokuje instalację dostawcy WMI

Uszkodzenie usługi WMI może zablokować instalację dostawcy WMI programu Windows Communication Foundation podczas instalowania pakietu .NET Framework 3.0. Podczas instalacji instalator programu Windows Communication Foundation nie może zarejestrować pliku mof WCF przy użyciu składnika mofcomp.exe . Poniżej znajduje się lista objawów:

  1. .NET Framework instalacja 3.0 zakończy się pomyślnie, ale dostawca WMI programu WCF nie jest zarejestrowany.

  2. Zdarzenie błędu pojawia się w dzienniku zdarzeń aplikacji, które odwołuje się do problemów z rejestrowaniem dostawcy usługi WMI dla usługi WCF lub uruchamianiem mofcomp.exe.

  3. Plik dziennika instalacji o nazwie dd_wcf_retCA* w katalogu %temp% użytkownika zawiera odwołania do niepowodzenia zarejestrowania dostawcy WMI programu WCF.

  4. Wyjątek, taki jak jeden z poniższych, może być wymieniony w dzienniku zdarzeń lub w pliku dziennika śledzenia konfiguracji:

    ServiceModelReg [11:09:59:046]: System.ApplicationException: Nieoczekiwany wynik 3 wykonujący E:\WINDOWS\system32\wbem\mofcomp.exe za pomocą polecenia "E:\WINDOWS\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ServiceModel.mof"

    lub:

    ServiceModelReg [07:19:33:843]: System.TypeInitializationException: inicjator typu "System.Management.ManagementPath" zwrócił wyjątek. >--- System.Runtime.InteropServices.COMException (0x80040154): Pobieranie fabryki klas COM dla składnika o identyfikatorze CLSID {CF4CC405-E2C5-4DDD-B3CE-5E7582D8C9FA} nie powiodło się z powodu następującego błędu: 80040154.

    lub:

    ServiceModelReg [07:19:32:750]: System.IO.FileNotFoundException: Nie można załadować pliku lub zestawu "C:\WINDOWS\system32\wbem\mofcomp.exe" lub jednej z jego zależności. W systemie nie można odnaleźć określonego pliku.

    Nazwa pliku: 'C:\WINDOWS\system32\wbem\mofcomp.exe

Aby rozwiązać opisany wcześniej problem, należy wykonać poniższe kroki.

  1. Uruchom Narzędzie diagnostyczne WMI, aby naprawić usługę WMI. Aby uzyskać więcej informacji na temat korzystania z tego narzędzia, zobacz Narzędzie diagnostyczne WMI.

Napraw instalację .NET Framework 3.0 przy użyciu apletu Dodaj/Usuń programy znajdującego się w Panel sterowania lub odinstaluj/zainstaluj ponownie .NET Framework 3.0.

Napraw .NET Framework 3.0 po instalacji .NET Framework 3.5

Jeśli wykonasz naprawę .NET Framework 3.0 po zainstalowaniu .NET Framework 3.5, elementy konfiguracji wprowadzone przez .NET Framework 3.5 w machine.config zostaną usunięte. Jednak plik web.config pozostaje nienaruszony. Obejście polega na naprawieniu .NET Framework 3.5 po tym za pośrednictwem protokołu ARP lub użycie narzędzia rejestracji usługi WorkFlow (WFServicesReg.exe) z przełącznikiem/c.

Narzędzie rejestracji usługi Przepływu pracy (WFServicesReg.exe) można znaleźć w folderze %windir%\Microsoft.NET\framework\v3.5\ lub %windir%\Microsoft.NET\framework64\v3.5\

Skonfiguruj prawidłowo usługi IIS dla hosta internetowego WCF/WF po zainstalowaniu .NET Framework 3.5

Jeśli instalacja .NET Framework 3.5 nie może skonfigurować dodatkowych ustawień konfiguracji usług IIS związanych z programem WCF, rejestruje błąd w dzienniku instalacji i kontynuuje działanie. Każda próba uruchomienia aplikacji WorkflowServices zakończy się niepowodzeniem, ponieważ brakuje wymaganych ustawień konfiguracji. Na przykład ładowanie usługi xoml lub reguł może zakończyć się niepowodzeniem.

Aby obejść ten problem, użyj narzędzia rejestracji usługi WorkFlow (WFServicesReg.exe) z przełącznikiem /c , aby prawidłowo skonfigurować mapy skryptów usług IIS na maszynie. Narzędzie rejestracji usługi Przepływu pracy (WFServicesReg.exe) można znaleźć w folderze %windir%\Microsoft.NET\framework\v3.5\ lub %windir%\Microsoft.NET\framework64\v3.5\

Nie można załadować typu "System.ServiceModel.Activation.HttpModule"

Nie można załadować typu "System.ServiceModel.Activation.HttpModule" z zestawu "System.ServiceModel, wersja 3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"

Ten błąd występuje, jeśli zainstalowano .NET Framework 4, a następnie włączono aktywację HTTP programu WCF. Aby rozwiązać ten problem, uruchom następujące polecenie z poziomu wiersza polecenia dewelopera dla programu Visual Studio:

aspnet_regiis.exe -i -enable