2016-04-27 1 views
0

Ich habe einen Fehler beim Ausführen eines Asmx WebService, der ASP.net 2.0 auf IIS 7.5 verwendet. Der Webservice ruft mithilfe des Dllimport-Aufrufs eine Methode aus einer DLL auf. Der Punkt, an dem der Anruf getätigt wird, ist der Ort, an dem der Fehler auftritt. Allerdings bekomme ich keine Ausnahmen, nur ERR_CONNECTIO_RESET von jedem Explorer.IIS 7.5 Fehler bei einem DLLImport-Aufruf

was ich versucht habe:

  • Die DLL an der richtigen Stelle, die Bin-Ordner befindet. Ich habe versucht, es zu system32 und anderen Orten zu bewegen. Aber wenn ich den Namen die DLL auf dem Aufruf von DLLIMPORT ändern, bekomme ich einen Fehler, die DLL nicht zu lokalisieren, was bedeutet, dass es die DLL findet, stürzt nur auf der Methode ab.
  • Ich habe auch GetLastWin32Error() verwendet und die Nachricht 127 ERROR_PROC_NOT_FOUND erhalten. Nicht sicher, ob es relevant ist, aber ist etwas Ich versuchte es auch.
  • Wenn ich den Webservice auf Debug von VisualStudio ausführen, erhalte ich keinen Fehler auf den Anruf. Der Fehler ist also bei der Ausführung auf IIS.
  • Ich habe auch auf einer älteren Maschine mit IIS 6 auf Windows XP versucht und ich bekomme keine Fehler. Das macht ich denke, es hat mit einem Sicherheitsproblem zu tun, weil wenn ich die Website auf IIS habe ich diesen Bildschirm bekam:

IIS 6

Und ich irgendwelche Sicherheitsoptionen nicht auf IIS konfiguriert habe 7,5 . Also habe ich versucht, diese

http://forums.iis.net/post/2119656.aspx

Welche Schritte sind dem Anwender genügend Berechtigungen auf den Ordner zu konfigurieren. Allerdings immer noch kein Glück.

Was ich glaube jetzt sein könnte, ist etwas mit GOP (Group Policy Object) verbunden. Der PC, auf dem ich diesen Dienst betreibe, befindet sich in einem Firmennetzwerk. Ich habe Administratorrechte und keine Firewall-Einschränkungen. Ich weiß jedoch nicht, ob IIS 7.5 etwas von einem anderen Benutzer verwendet oder unterschiedliche Berechtigungen benötigt.

Alle anderen Threads, die ich gefunden habe, haben nicht die richtige Antwort für mich. Jede Hilfe, die ich bekommen könnte, wird geschätzt.

Antwort

0

Endlich nach einer Woche des Umgangs damit, fand ich das Problem. Nachdem ich einige Logs gefunden habe, die ich auf C: \ Windows \ System32 \ LogFiles \ HTTPERR überprüfen konnte, habe ich den Fehlercode Connection_Abandoned_By_ReqQueue gefunden.

Nach einigen langen Untersuchung, fand ich heraus, dass die Nachricht bedeutet, dass das Programm wegen der Verderbnis korrumpiert (wie auf diesem Post Connection_Abandoned_By_ReqQueue Problems). Die DLL, die ich benutze, ist ziemlich alt und die Leute, die generiert haben, haben keine Version erstellt, die den Speicher richtig behandelt (zumindest für IIS 7.5), also bin ich dabei, eine andere Bibliothek zu finden, die diese Arbeit macht ein Server mit IIS 6.