Ich habe einen Dienst geschrieben, der auf einer Azure Windows Server 2016-VM ausgeführt wird. Wenn ein Auftrag aus der Warteschlange abgerufen wird, wird ein anderes Programm erstellt, das eine PDF generiert und auf der Festplatte speichert. Ich lese Konfigurationsdateien und speichere HTML-Dateien (die mit einer Drittanbieter-Komponente in PDF konvertiert werden) mit streamreader/streamwriter auf die Festplatte.Ich kann aus meinem .Net-Code keine Azure Files-Freigabe lesen/schreiben
Aber ich bekomme Versionen von Pfad konnte nicht Fehler für alle Festplattenzugriff auf die Azure-Dateien SMB-Freigabe gefunden werden. Wenn ich eine lokale Festplatte verwende, funktioniert es gut.
Ich habe doppelt überprüft, dass es den richtigen Pfad verwendet und dass der Pfad tatsächlich existiert (einfach P :).
Dies funktioniert seit Jahren auf einem gemeinsam genutzten App-Server. Ich versuche gerade jetzt, alles nach Azure zu verschieben.
Irgendwelche Ideen, was ich vermisse oder falsch mache?
EDIT:
Sieht aus wie ich in dieses Problem leite: https://serverfault.com/questions/177139/windows-service-cant-access-network-share
Aber ich kann die gleiche Lösung hier nicht ausgeführt werden, da mit Azure-Dateien kein Remote-Server ist, dass ich einen Benutzer hinzufügen .
Ein MSDN Forum-Benutzer schlug vor, Azure Storage Client Library zu verwenden. Meine Drittanbieter-PDF-Komponente kann nicht neu programmiert werden, um die Azure Client Storage-Bibliothek zu verwenden. Daher muss ich meine gesamte Arbeit auf dem lokalen Laufwerk ausführen und dann die endgültige PDF-Datei in Azure Files kopieren.
Dies wäre eine völlig akzeptable Lösung. Aber ich weiß nicht, wie ich es schaffen soll.
Bearbeiten Sie Ihre Frage einige Details zeigen (wie Ihr Code, der tatsächliche Share-Konfiguration, etc). Ohne irgendwelche Details zu sehen, erhalten Sie nur Vermutungen. –
Was meinst du genau mit "Dienst läuft auf einem Windows-Server"? Ein Windows-Dienst oder eine Webanwendung, die einen Webdienst bereitstellt? Ein weiterer Punkt: Ich habe verstanden, dass P: eine abgebildete Netzwerkfreigabe ist. Unter welchem Benutzer haben Sie das Mapping erstellt? Ist derselbe Benutzer, unter dem der Dienst ausgeführt wird? Fügen Sie auch Informationen/vollständige Stapelverfolgung zu dem Fehler hinzu, den Sie erhalten haben –