webentwicklung-frage-antwort-db.com.de

Azure Storage Emulator-Fehler und startet nicht

Dieser Fehler macht mich wirklich verrückt. (Terminal läuft im Administratormodus)

Initialisierung des Azure-Speicheremulators in SQL Server 2014:

C:\Program Files (x86)\Microsoft SDKs\Windows Azure\Storage Emulator>.\wastorage
emulator init -server MY-PC
Windows Azure Storage Emulator 3.0.0.0 command line tool
The storage emulator was successfully initialized and is ready to use.

Fehler beim Starten des Servers:

C:\Program Files (x86)\Microsoft SDKs\Windows Azure\Storage Emulator>.\wastorage
emulator start
Windows Azure Storage Emulator 3.0.0.0 command line tool

Unhandled Exception: System.TimeoutException: Unable to open wait handle.
   at Microsoft.WindowsAzure.Storage.Emulator.Controller.EmulatorProcessControll
er.InternalWaitForStorageEmulator(Int32 timeoutInMilliseconds)
   at Microsoft.WindowsAzure.Storage.Emulator.Controller.EmulatorProcessControll
er.EnsureRunning(Int32 timeoutInMilliseconds)
   at Microsoft.WindowsAzure.Storage.Emulator.StartCommand.RunCommand()
   at Microsoft.WindowsAzure.Storage.Emulator.Program.Main(String[] args)
46
BigChief

Überprüfen Sie, ob Sie BitTorrent/uTorrent oder eine ähnliche Software über Port 10000 ausführen. 

Lesen Sie den Blog-Beitrag von Steve Marx über das Problem. http://blog.smarx.com/posts/windows-Azure-storage-emulator-the-process-cannot-access-the-file-notwendig-von-einer-verwendet-von-einem anderen

Falls dieser Beitrag nicht mehr angezeigt wird, lautet der Befehl zum Überprüfen, ob eine andere Software diesen Port verwendet:

C:\Users\smarx>netstat -p tcp -ano | findstr :10000
  TCP    127.0.0.1:10000        0.0.0.0:0              LISTENING       3672
127
David Rodriguez

Ich habe dasselbe Problem nach dem Update der Azure-Tools (Version 2.3). Nach stundenlanger Recherche fand ich eine seltsame Lösung: Setzen Sie "Windows Azure-Speicheremulator starten" auf "False" (in Eigenschaften des Azure-Projekts).

16
AChudov

Stellen Sie sicher, dass der Benutzer, der den Emulator initialisiert hat, mit dem Benutzer identisch ist, der den Emulator startet. Beachten Sie, dass die Initialisierung nur für diesen Benutzer gilt, wenn Sie einen anderen Benutzer zur Ausführung der Initialisierung verwenden.

Wenn dies nicht hilft, können Sie versuchen, den Emulator mit dem Flag -inprocess zu starten, um eine detailliertere Fehlermeldung zu erhalten:

WAStorageEmulator start -inprocess

Zusammenfassung und Hinzufügen weiterer Punkte zu anderen Antworten auf diese Frage.

Öffnen Sie die Datei C:\Programme (x86)\Microsoft SDKs\Azure\Storage Emulator\AzureStorageEmulator.exe in einem Editor oder Notepad ++ - Editor.

<services>
  <service name="Blob" url="http://127.0.0.1:10000/"/>
  <service name="Queue" url="http://127.0.0.1:10001/"/>
  <service name="Table" url="http://127.0.0.1:10002/"/>
</services>

Versuchen Sie, die URL für "Blob" in einem Webbrowser zu öffnen. In meinem Fall ist es das 

http://127.0.0.1:10000/

Wenn Sie die URL nicht öffnen können oder ein Fehler auftritt, können Sie den Azure Storage Emulator deshalb nicht starten.

Führen Sie die folgenden Schritte aus, um das Problem zu beheben.

1) Prüfen Sie, ob der Port 10000 belegt ist oder von einem anderen Prozess verwendet wird. 

Um dies zu wissen, können Sie den folgenden Befehl in die Eingabeaufforderung eingeben

netstat -na | find "10000"

Töte den Prozess.

Starten Sie jetzt den Azure Storage Emulator im Modus "Inprozess"

Im Eingabeaufforderungstyp des Azure Storage Emulator

AzureStorageEmulator.exe start -inprocess

Strg + c und dann 

AzureStorageEmulator.exe start

Wenn das Problem dadurch nicht behoben wurde, versuchen Sie den zweiten Schritt.

2) Führen Sie das aus 

netsh http add iplisten 127.0.0.1

und dann im Eingabeaufforderungstyp des Azure Storage Emulator

AzureStorageEmulator.exe start -inprocess

Strg + c und dann 

AzureStorageEmulator.exe start
8
Ram Pratap

Führen Sie die Microsoft Azure-Eingabeaufforderung als Administrator aus, und initialisieren Sie die Initialisierung mit AzureStorageEmulator.exe und starten Sie dann die Startbefehle von AzureStorageEmulator.exe. Es hat für meinen Fall funktioniert.

8
Geek

Versuchen Sie auch, den Befehl Eingabeaufforderung mit: "Als Administrator ausführen" auszuführen Führen Sie dann den folgenden Befehl aus: C:\Programme (x86)\Microsoft SDKs\Azure\Storage Emulator> AzureStorageEmulator .exe start

Das hat mir geholfen!

5
Don Bar

Ich hatte dasselbe Problem, da ich meinen Computer wieder mit der Domäne verbinden musste und das Benutzerprofil neu erstellt wurde Ich bemerkte, dass es mit der Option -inprocess von erhöhten cmd begann urlac und ich haben das Löschen alter mit folgenden Befehlen gelöst: 

(from elevated cmd)
netsh http delete urlacl url=http://127.0.0.1:10000/
netsh http delete urlacl url=http://127.0.0.1:10001/
netsh http delete urlacl url=http://127.0.0.1:10002/

Danach einfach wie gewohnt starten, das Werkzeug erstellt das Notwendige neu .. Jetzt kann ich es ohne Erhöhung verwenden.

4
Riccardo

Eine andere Option ist das Ändern der IP-Bindung, die der Emulator in der Konfigurationsdatei im Speicheremulatorverzeichnis verwendet. 

Suchen Sie die Datei "wastorageemulator.exe.config " Und ändern Sie sie 

<services>
      <service name="Blob" url="http://127.0.0.1:10000/"/>
      <service name="Queue" url="http://127.0.0.1:10001/"/>
      <service name="Table" url="http://127.0.0.1:10002/"/>
   </services>

Dies wäre nützlich, wenn eine andere Anwendung diesen Port bereits verwendet und Sie nicht deinstallieren können. 

4
CrazyBernie

Es gibt einige Informationen, die hier helfen könnten:

AzureStorageEmulator.exe init –server MyMachine –sqlinstance **.** –forcecreate –inprocess

Siehe diesen link .

2
Choco

Ich bin auf das gleiche Problem gestoßen. Ich habe herausgefunden, dass der Port 10000 von einem anderen Prozess verwendet wird. In meinem Fall benutzte uTorrent es. Es könnte Bittorrent sein, wenn Sie das verwenden. Nach der Deinstallation begann es problemlos mit dem Ändern meiner Daten.

Wenn Ihr Torrent-Downloader Ihnen so viel bedeutet, können Sie das Problem unter diesem Gesichtspunkt lösen. Ich hoffe das funktioniert.

1
Williams Adu

Für Benutzer des neu veröffentlichten documentdb-Emulators ... Microsoft hielt es für eine gute Idee, dass der documentdb-Emulator denselben Port wie der Speicheremulator verwendet;) Sie können nur auf den Speicher zugreifen, indem Sie den documentdb-Emulator herunterfahren und Visual Studio neu starten und voila kannst du es wieder verwenden: facepalm:

1
Hypi

Ich hatte das kürzlich in der Vergangenheit, und ich hatte den HDInsight-Emulator vor kurzem installiert. Es hat den Anschein, als sei der Storage-Emulator automatisch gestartet, was zu einem Fehler führte, als VS versuchte, ihn zu starten, was zu einem Fehler führte.

Das Festlegen des Werts "Start des Microsoft Azure-Speicheremulators" auf "False" hat auch in diesem Fall funktioniert.

1
SteveM1972

Ich habe ein ähnliches Problem mit Visual Studio beim Ausführen von Azure Functions. AzureStorageEmulator.exe init hat für mich funktioniert

1
Preeti Joshi

Ich habe es gerade getroffen, und es stellt sich heraus, dass Microsoft Teams Port 10000 verwendet hat. Das Erzwingen von Teams hat das Problem gelöst. ????

1
Paul Batum

Für mich lief an den benötigten Ports nichts, das Problem war, dass Visual Studio nicht im Administrator-Modus gestartet wurde, sodass der Prozess nicht gestartet werden konnte.

Als ich von "Start" zur Azure Storage Emulator-Befehlszeilenschnittstelle ging, wird eine Befehls-Shell gestartet, die ebenfalls nicht im Administratormodus / ist, die offensichtlich dasselbe Ergebnis liefert.

Das Öffnen einer Befehls-Shell im Admin-Modus hat die Aufgabe erfüllt.

1
Richard Hauer

wenn Sie versuchen, "Azure-Speicheremulator" über Visual Studio => Server-Explorer zu starten, müssen Sie sicherstellen, dass Sie Visual Studio als Administrator starten. Dieses Problem konnte behoben werden, indem der "Azure-Speicheremulator" an der Eingabeaufforderung und der Befehl Eingabeaufforderung als Administrator ausgeführt wurde. 

0
Ajit Goel

Der Windows-Sicherungsagent wurde in meinem VM - Feld an Port 10000 ausgeführt - wechselt zu 10003 (über die .exe.config-Datei).

0
Rory Solley