2013-01-21 11 views
20

otrzymuję błąd: „Podany klucz rejestru nie istnieje”, gdy następujący kod WCF jest wykonywany:WCF: Określony klucz rejestru nie istnieje w base.Channel rozmowy

return base.Channel.GetRateSheet(request); 

Jest reszta sposobu, w których stosuje się:

public GetRateSheetResponse GetRateSheet(GetRateSheetRequest request) 
{ 
    return base.Channel.GetRateSheet(request); 
} 

config o ten punkt końcowy:

<endpoint address="http://*********/*******/Service.svc" 
      binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IBusinessService" 
      name="Endpoint_RateSheetService" 
      contract="*********.RateSheetService" /> 

Thi s kod używany do pracy przez wiele tygodni, a dziś rano zaczyna rzucać ten błąd.

Nie ma wewnętrzny wyjątek i jedyny ślad stosu pojawia się:

at Microsoft.Win32.RegistryKey.Win32Error(Int32 errorCode, String str) 

Zrobiłem wszystko wspólne kopanie opon: wznowiona VS, rozruchu maszyny, mam najnowszą wersję kodu źródłowego.

Uruchamianie XP 32-bitowe.

Bardzo dziękuję za wszelkie sugestie!

[EDIT:] Kiedy przechodzę do folderu bin rozwiązania i uruchamiam plik wykonywalny, działa - bez błędu. Błąd występuje tylko wtedy, gdy działa z Visual Studio

+0

Kiedy mówisz, że masz najnowszą wersję, czy mówisz o .NET 4.5? – Despertar

+0

nie, wersja kodu źródłowego z kontroli źródła. Dzięki. – Paceman

+0

Wszystkie najnowsze aktualizacje systemu operacyjnego lub VS? – nunespascal

Odpowiedz

36

Wydaje ludzie mają do czynienia similar issues po zainstalowaniu poprawki zabezpieczeń dla programu .NET Framework: MS12-074: Vulnerabilities in .NET Framework could allow remote code execution: November 13, 2012

Można ask microsoft to fix it here

Obejście - dodaj następujący klucz rejestru:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework] 
"LegacyWPADSupport"=dword:00000000 

Dla 64-bitowe maszyny

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework] 
"LegacyWPADSupport"=dword:00000000 
+0

Więc ten problem został rozwiązany przez dodanie tego jednego klucza rejestru? –

+0

Tak, ale tylko wtedy, gdy powstały po zainstalowaniu tej konkretnej poprawki zabezpieczeń. – nunespascal

5

Wpadłem na ten problem podczas debugowania czegoś dzisiaj. Wyjątek zniknie, jeśli zaznaczysz opcję "Tylko mój kod" w ustawieniach debugowania w VS.

0

przejść do -> Debug -> Wyjątki i odznacz "Wyjątki" Common Language Runtime

To powinno reslove problem.

Powiązane problemy