Эмулятор вычислений Azure не запускается
Некоторое время мой эмулятор вычислений Azure не запускается. Когда я пытаюсь, я получаю следующую ошибку:
Cannot create a file when that file already exists. (Exception from HRESULT: 0x800700B7)
Если я нажимаю "Показать детали", я получаю следующее сообщение:
System.Runtime.InteropServices.COMException (0x800700B7): Cannot create a file when that file already exists. (Exception from HRESULT: 0x800700B7)
at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
at Microsoft.WindowsAzure.GuestAgent.EmulatorRuntime.EmulatorRuntimeImpl.Initialize(String runtimeConfigIniFile, String serviceName, String rootPath, String logFilePath)
at Microsoft.ServiceHosting.Tools.DevelopmentFabric.Fabricator.InitializeEmulatorRuntime()
at Microsoft.ServiceHosting.Tools.DevelopmentFabric.Fabricator.InitializeRuntimeAgents()
at Microsoft.ServiceHosting.Tools.DevelopmentFabric.Fabricator.Initialize()
at Microsoft.ServiceHosting.Tools.DevelopmentFabric.Program.Main(String[] args)
Я в растерянности, я полностью удалил Azure SDK (текущая версия и все предыдущие версии), а затем переустановил только последнюю версию (2.8). Я отключил функции IIS и снова включил его. Я удалил / очистил файл dftmp. Я пытался восстановить SQL Management Studio 2014 R1 и Visual Studio 2015. Я понятия не имею, о каком файле порта идет речь. Я перезагружал свой компьютер несколько сотен раз. При попытке запуска эмулятора вычислений процесс службы эмулятора вычислений Microsoft Azure запускается и продолжает работать вместе с DFService.exe и dfMonitor.exe. Идеи закончились. Кто-нибудь знает, как это исправить? Или к какому файлу он относится, чтобы его можно было удалить? Кстати, эмулятор хранилища запускается просто отлично.
Дополнительная информация:
Командная строка Windows Azure
csrun /devfabric:shutdown
"The compute emulator is not running."
Однако он не завершает процессы и сохраняет файлы активными, поэтому он не сможет удалить EmulatorRuntime.log или DFService.log. Если я иду и заканчиваю процессы в диспетчере задач, тогда запускаю clean, он фактически очищает.
csrun /devfabric:start
"Starting the compute emulator..."
Тогда ничего не происходит. Это довольно захватывающе.
sqllocaldb stop MSSQLLocalDB
"LocalDB instance 'MSSQLLocalDB' stopped."
sqllocaldb delete MSSQLLocalDB
"LocalDB instance 'MSSQLLocalDB' deleted."
В этот момент я также удалил%UserProfile%/AzureStorageEmulatorDb42.mdf и.ldf
sqllocaldb delete MSSQLLocalDB
"LocalDB instance 'MSSQLLocalDB' started."
На данный момент он больше не содержит базу данных AzureStorageEmulatorDb42, но возвращает все пустые таблицы, кроме учетной записи, в которой есть одна строка devstorageaccount1.
EmulatorRuntime.log
[00015280:00006600, 2016/03/18, 21:57:59.949, INFO ] Initializing agent runtime. isDesktop: TRUE allowMultipleRoles:TRUE rootPath: C:\Users\tyangell\AppData\Local\dftmp\
[00015280:00006600, 2016/03/18, 21:57:59.949, INFO ] Agent: Starting.
[00015280:00006600, 2016/03/18, 21:57:59.949, INFO ] Agent: Initialized.
[00015280:00006600, 2016/03/18, 21:57:59.949, INFO ] Machine Configuration:
[00015280:00006600, 2016/03/18, 21:57:59.964, INFO ] Agent flags value = 0x980
[00015280:00006600, 2016/03/18, 21:57:59.997, INFO ] Deleting sublayer 7ad92418-6582-4371-96f1-703ce4f99418
[00015280:00006600, 2016/03/18, 21:57:59.998, INFO ] Agent: Initializing disks.
[00015280:00020148, 2016/03/18, 21:57:59.999, INFO ] ACLing root folder C:\Users\tyangell\AppData\Local\dftmp\
[00015280:00020148, 2016/03/18, 21:58:00.001, INFO ] Finished ACLing root folder C:\Users\tyangell\AppData\Local\dftmp\
[00015280:00006600, 2016/03/18, 21:58:00.001, INFO ] Root folder ACL thread finished executing.
[00015280:00006600, 2016/03/18, 21:58:00.001, INFO ] Agent: Disks initialized.
[00015280:00006600, 2016/03/18, 21:58:00.001, INFO ] Agent: Initializing runtime.
[00015280:00006600, 2016/03/18, 21:58:00.001, INFO ] Setting all Sids to Built-in administrators...
[00015280:00006600, 2016/03/18, 21:58:00.001, INFO ] Initializing Runtime Http Monitor...
[00015280:00006600, 2016/03/18, 21:58:00.001, INFO ] Finished initializing Runtime Http Monitor.
[00015280:00006600, 2016/03/18, 21:58:00.001, WARN ] Container 00000000-0000-0000-0000-000000000000 not found.
[00015280:00019052, 2016/03/18, 21:58:00.001, INFO ] >>>>_Context_Start: {17477CD7-A015-46C5-8EA6-0F8CD34F5796} Context={{ RuntimeHttpMonitor }}
[00015280:00006600, 2016/03/18, 21:58:00.001, WARN ] <- RuntimeFindContainer=0x80070490
[00015280:00006600, 2016/03/18, 21:58:00.001, INFO ] Agent: Runtime initialized.
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] Agent: Started.
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] >>>>_Context_Start: {032EB212-30FC-469C-9CE7-6792CCB409E5} Context={{ AgentCreateContainer: ContainerId=EmulatorContainer}
[00015280:00006600, 2016/03/18, 21:58:00.180, WARN ] <- AgentMonitoringObject::EventStart(0x00007FFA1197E5A0) =0x80070015 Context={{ AgentCreateContainer: ContainerId=EmulatorContainer}
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] >>>>_Context_Start: {AB8AB0D3-A170-4223-9B31-3562305D67AA} Context={{ AgentpCreateContainerWorker: Id=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] >>>
AgentCreateContainerWorker() called with
Id=EmulatorContainer
Context={{ AgentpCreateContainerWorker: Id=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] Creating a container of type 1 Context={{ AgentpCreateContainerWorker: Id=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, WARN ] Container EmulatorContainer not found. Context={{ AgentpCreateContainerWorker: Id=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, WARN ] <- RuntimeFindContainer=0x80070490 Context={{ AgentpCreateContainerWorker: Id=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, WARN ] <- AgentMonitoringObject::EventStart(0x00007FFA1197E5A0) =0x80070015 Context={{ AgentpCreateContainerWorker: Id=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] AgentpCreateContainerWorker Returning
00000000.
<<< Context={{ AgentpCreateContainerWorker: Id=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] <<<<_Context_Ends: {AB8AB0D3-A170-4223-9B31-3562305D67AA} Return value = 00000000. Context={{ AgentpCreateContainerWorker: Id=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, WARN ] <- AgentMonitoringObject::EventEnd(0x00007FFA1197E5A0) =0x80070015
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] <<<<_Context_Ends: {4BE85F52-DC49-4359-AD52-AD97661E9109} Return value = 00000000.
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] >>>>_Context_Start: {BDC4EA59-A0B2-454F-9B28-187515E8E947} Context={{ StartContainer: ContainerId=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, WARN ] <- AgentMonitoringObject::EventStart(0x00007FFA1197E5A0) =0x80070015 Context={{ StartContainer: ContainerId=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] >>>>_Context_Start: {8ED05D2B-1F69-4A43-9449-BAA47C9DFEAE} Context={{ AgentpStartContainerWorker: Id=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, WARN ] <- AgentMonitoringObject::EventStart(0x00007FFA1197E5A0) =0x80070015 Context={{ AgentpStartContainerWorker: Id=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] <<<<_Context_Ends: {8ED05D2B-1F69-4A43-9449-BAA47C9DFEAE} Return value = 00000000. Context={{ AgentpStartContainerWorker: Id=EmulatorContainer }}
[00015280:00006600, 2016/03/18, 21:58:00.180, WARN ] <- AgentMonitoringObject::EventEnd(0x00007FFA1197E5A0) =0x80070015
[00015280:00006600, 2016/03/18, 21:58:00.180, INFO ] <<<<_Context_Ends: {4BE85F52-DC49-4359-AD52-AD97661E9109} Return value = 00000000.
DFService.log
Started: "C:\Program Files\Microsoft SDKs\Azure\Emulator\devfabric\DFService.exe" -sp "C:\Users\tyangell\AppData\Local\dftmp" -enableIIS -singleInstance -elevated
3 ответа
После почти полного года поиска в блоге сообщение с решением было найдено!! https://blogs.msdn.microsoft.com/cie/2016/05/17/azure-emulator-crash-with-error-0x800700b7-cannot-create-a-file-when-that-file-already-exists
Поскольку ссылки в блогах имеют тенденцию к изменению, я повторю здесь:
Во-первых, я предлагаю вам проверить следующий отличный блог поддержки:
Затем, после того, как вы проверили сообщение в блоге, вам нужно проверить, какой из них является отсутствующим или неисправным классом WMI, выполнив следующие действия:
- Перейти к запуску-запустить и введите wmimgmt.msc
- Щелкните правой кнопкой мыши на Local WMI Control (Local) и выберите свойства.
- На вкладке "Общие", если в этом поле отмечены сбои, это указывает на проблему с WMI.
- Найдены файлы.MOF для пространства имен / класса Win32_Processor
В этом случае я увидел, что существует несколько недопустимых классов WMI:
- Win32_Processor
- Win32_WMISetting
Восстановите файл MOF, запустив mofcomp.exe . Mofcomp.exe находится в папке C:\Windows\System32\wbem.
C:\Windows\System32\wbem>mofcomp.exe CimWin32.mof
А затем заново зарегистрируйте связанную DLL, выполнив команду regsvr32
C:\Windows\System32\wbem>regsvr32 cimwin32.dll
- Убедитесь, что это исправлено или нет, еще раз проверив элемент управления WMI (wmimgmt.msc). На этот раз, как вы можете видеть на рисунке ниже, больше нет ошибок класса WMI.
- Затем перезапустите эмулятор, и на этот раз вы увидите, что эмулятор снова запустится, на этот раз без проблем / сбоев.
Благодарим Джулио Ко от Microsoft.
Для тех, кто получает эту проблему (с последней версией VS 2017 15.6) и DONT, есть какие-либо проблемы с WMI, как описано здесь, вы не одиноки:(
Кажется, ошибка адаптировалась и теперь вызвана чем-то другим.
После недавнего обновления Windows я начал видеть эту ошибку при попытке запустить приложение, которое ранее запускалось без ошибок.
При попытке запустить эмулятор вычислений через оболочку Azure SDK (или "Командная строка Microsoft Azure") от имени администратора с помощью команды csrun /devfabric /usefullemulator
Затем меня спросили, хочу ли я разрешить эмулятору вычислений общаться через брандмауэр Windows. После включения я смог снова использовать VS(2017) как обычно, без ошибок.