If you are trying to run the services of the azure storage emulator (Blob, Queue, Table) and you ever get this error:
The process cannot access the file because it is being used by another process
Then continue reading…
As you might imagine it happened to me, and I found that the blob service is the one complaining:
I knew something was wrong with the endpoint, from the error message i could tell that most probably the problem was that the endpoint address being used by some other process.
So from the command prompt i ran Network Statistics tool (Netstat) and got the following:
As you can see, i had ports 10001 and 10002 saying “cannot obtain ownership information” but anyway I had no problems with these ports as they are associated with the Queue and Table services respectively and both are started. However, it is clear that port 10000 is occupied by BitTorrent on my machine (yes you caught me!) so that is why the Blob service could not be started.
Once I stopped BitTorrent I could start the Blob service.
Note: you would have another option which would be changing the ports the emulator use for the storage services. You could do that by navigating to:
C:\Program Files\Windows Azure SDK\v1.4\bin\devstore
(replace 1.4 with your SDK version) and openning DSService.exe.config. From there you could change the configuration and make your services listen to another ports.