Frage

Ich habe ein kleines Tool entwickelt, um Gehaltsinformationen in die Schweizer Administration hochzuladen, und habe WSE 3.0 mit Erfolg verwendet. Aber jetzt hat einer meiner Kunden berichtet, dass mein Programm auf seiner Maschine mit der folgenden Stapelspur abstürzt:

WSE032: There was an error loading the microsoft.web.services3 configuration section.
  at Microsoft.Web.Services3.Configuration.WebServicesConfiguration.get_Current()
  at Microsoft.Web.Services3.Configuration.WebServicesConfiguration.get_MessagingConfiguration()
  at Microsoft.Web.Services3.WebServicesClientProtocol..ctor()
  ...

Ich habe versucht herauszufinden, was das bedeutet, aber ich muss zugeben, dass ich hier ein bisschen verloren bin. Das Programm hat a .exe.config Datei mit folgenden Inhalten:

<?xml version="1.0"?>
<configuration>
  <configSections>
    <section name="microsoft.web.services3" type="Microsoft.Web.Services3.Configuration.WebServicesConfiguration, Microsoft.Web.Services3, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    ...
  </configSections>
  <startup>
    <supportedRuntime version="v2.0.50727"/>
  </startup>
  <microsoft.web.services3>
    <security>
      <x509 allowTestRoot="false" storeLocation="CurrentUser" skiMode="RFC3280"/>
    </security>
  </microsoft.web.services3>
...
</configuration>

Entferne den <security> Knoten aus dem XML oben Art von Behebt das Problem (der WSE032 -Fehler verschwindet), aber dies ist in meinem Fall keine Lösung, da ich die Sicherheit auf diese Weise konfigurieren muss, um die Daten zu unterzeichnen, die ich später übermittele.

Jede Idee, was das Problem sein könnte. Offensichtlich wurde WSE 3.0 auf der Maschine des Kunden installiert, da die Stapelverfolgung es ansonsten nicht in den Anrufern gezeigt hätte, bevor der WSE032 -Fehler auftritt.

War es hilfreich?

Lösung

Es scheint, dass der Kunde das Programm aus einem Antriebsbuchstaben ausführte, der auf einer Aktie montiert ist. Obwohl ich dachte, dass .NET 3.5 SP1 ein umfassendes Vertrauensrechte für Exes erlaubte, die von der gestartet wurden LocalIntranet_Zone, Dies scheint ein Problem beim Laden des Abschnitts der WSE -Konfiguration der ausführbaren Datei zu sein.

Um dies zu beheben, rannte ich caspol was hier gefunden werden kann:

C:\Windows\Microsoft.NET\Framework\v2.0.50727\caspol.exe

Die Befehlszeile ist etwas in den Zeilen von:

caspol -m -ag LocalIntranet_Zone -url N:\* FullTrust -n "name" -d "description"

Für eine Aktien, die am Antriebsbuchstaben montiert ist N:; beachten Sie, dass name und description sind rein informativ.

Dieser Befehl enthält alle ausführbaren Ausführbarungen auf dem Laufwerk N: das FullTrust Privilegien, als ob sie aus einer lokalen Ressource gestartet wurden (zum Beispiel festes Festplattenlaufwerk).

Sehen Wie man: Erteilung von Berechtigungen für Ordner und Baugruppen erteilen auf msdn.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top