2013-01-21 6 views
20

Ich erhalte eine Fehlermeldung: „Der angegebene Registrierungsschlüssel nicht existiert“, wenn der folgende WCF-Code ausgeführt wird:WCF: Der angegebene Registrierungsschlüssel existiert nicht in base.Channel Anruf

return base.Channel.GetRateSheet(request); 

Dies ist der Rest des Verfahrens, bei dem diese verwendet werden:

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

die Konfiguration für diesen Endpunkt ist:

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

Thi s Code verwendet, um für viele Wochen zu arbeiten, und heute Morgen wird damit begonnen, diesen Fehler zu werfen.

Es gibt keine innere Ausnahme und der einzige Stack-Trace ich erhalte, ist:

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

ich alle gängigen Reifen-Treten tat: Neustart VS, neu gestartet Maschine, bekam neueste Version des Quellcodes.

Ausführen von XP 32 Bit.

Vielen Dank ist der Fortschritt für Anregungen!

[EDIT:] Wenn ich zum bin-Ordner der Lösung gehen und die ausführbare Datei direkt ausführen, funktioniert es - kein Fehler. Der Fehler tritt nur, wenn sie von Visual Studio

+0

Wenn Sie sagen, dass Sie die neueste Version haben, sprechen Sie über .NET 4.5? – Despertar

+0

Nein, Version des Quellcodes aus der Quellcodeverwaltung. Vielen Dank. – Paceman

+0

Alle aktuellen OS oder VS Updates? – nunespascal

Antwort

36

laufen scheint, die Menschen similar issues nach einem Sicherheits-Patch für die Installation von .NET Framework konfrontiert: MS12-074: Vulnerabilities in .NET Framework could allow remote code execution: November 13, 2012

Sie können ask microsoft to fix it here

Umgehung - Fügen Sie den folgenden Registrierungsschlüssel:

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

Für 64-Bit-Maschinen

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

Also wurde dieses Problem gelöst, indem dieser eine Registerschlüssel hinzugefügt wurde? –

+0

Ja, aber nur, wenn es nach der Installation dieses bestimmten Sicherheitspatches aufgetreten ist. – nunespascal

5

Ich stieß auf dieses Problem beim Debuggen von etwas heute. Die Ausnahme verschwindet, wenn Sie die Option "Just my code" in den Debugging-Einstellungen in VS aktivieren.

0

Zum -> Debug -> Ausnahmen und deaktivieren Sie "Common Language Runtime Ausnahmen"

Dies sollte Ausgabe reslove.

Verwandte Themen