The Windows Process Activation Service (WAS) will not start on my Windows 10 PC anymore. As a result, IIS won't start. I'm not quite sure when it happened, but likely in the last month.
During startup, I now get a series of 4 error events in the System log:
WAS 5215: The Windows Process Activation Service (WAS) failed to execute initialization for offline setup. The data field contains the error number. [Data field: 50000780]
WAS 5005: Windows Process Activation Service (WAS) is stopping because it encountered an error. The data field contains the error number. [Data field: 50000780]
Service Control Manager 7023: The WAS service terminated with the following error: The file exists.
Service Control Manager 7001: The W3SVC service depends on the WAS service which failed to start because of the following error: The file exists.
I've not many references to this type of error with the error the file exists.
(I've tried to use ProcMon to try to identify what file it is referring to, but it absolutely refuses to run.)
Edit... finally got ProcMon to work (after extracting the 64-bit version using VS2017). Turns out that the file that was cause the above problem was the "applicationhost.config.tmp" file in the C:\Windows\System32\inetsrv\Config
folder. Removing that file allowed the process to continue further.
Now, the first and third errors are:
WAS 5215: The Windows Process Activation Service (WAS) failed to execute initialization for offline setup. The data field contains the error number. [Data field: 0D000780]
Service Control Manager 7023: The Windows Process Activation Service service terminated with the following error: The data is invalid.
As per the answer by Yanbing Shi, here are the most recent lines from the iis.log
file:
[01/13/2018 23:10:41] [ ***** IIS 10.0 Component Based Setup ***** ]
[01/13/2018 23:10:41] .\inetsrv\iissetup.exe /install SharedLibraries /nano
[01/13/2018 23:10:41] Setting Installation Type to Nano
[01/13/2018 23:10:41] Successfully added IIS_IUSRS ACE to DACL at %ProgramData%\Microsoft\Windows\WER\ReportQueue.
[01/13/2018 23:10:42] < !!FAIL!! > Failed to create the NetFrameworkConfigurationKey key container (result=0x8009000f)
[01/13/2018 23:10:42] < !!FAIL!! > Install of component SharedLibraries result=0x8009000f
[01/13/2018 23:10:42] < !!FAIL!! > COMPONENT::ExecuteCommand result=0x8009000f
[01/13/2018 23:10:42] [ End of IIS 10.0 Component Based Setup ]
In response to Yanbing Shi's next answer...
At first, I was unable to view/edit/delete the d6d986f09a1ee04e24c949879fdb506c_*
file. When I attempted to view its permission, I got the message: You do not have permission to view this object's security properties, even as an administrative user.
I was, however, able to change ownership to "Administrators" then give that groups Full
permission to it, and then I could view it. The file was not a text file but about 28 bytes into the file is NetFrameworkConfigurationKey
. I moved the file out of that folder.
I then ran net start was
and got System error 80 has occurred. The file exists.
There was nothing added to the iis.log
file but the usual Error events were added to the System event log.
I then manually deleted the applicationhost.config.tmp
file and ran net start was
. This time, I got System error 13 has occurred. The data is invalid.
This time, there were new entries to iis.log
[03/18/2018 07:44:54] [ ***** IIS 10.0 Component Based Setup ***** ]
[03/18/2018 07:44:54] .\inetsrv\iissetup.exe /install SharedLibraries /nano
[03/18/2018 07:44:54] Setting Installation Type to Nano
[03/18/2018 07:44:55] Successfully added IIS_IUSRS ACE to DACL at %ProgramData%\Microsoft\Windows\WER\ReportQueue.
[03/18/2018 07:44:55] Created NetFrameworkConfigurationKey key containter
[03/18/2018 07:44:56] Created NetFrameworkConfigurationKey user key
[03/18/2018 07:44:56] Set ACLs on NetFrameworkConfigurationKey
[03/18/2018 07:44:56] < !!FAIL!! > Failed to create the iisWasKey key container (result=0x8009000f)
[03/18/2018 07:44:56] < !!FAIL!! > Install of component SharedLibraries result=0x8009000f
[03/18/2018 07:44:56] < !!FAIL!! > COMPONENT::ExecuteCommand result=0x8009000f
[03/18/2018 07:44:56] [ End of IIS 10.0 Component Based Setup ]
The failure happened because WAS could not access the machine keys during startup. Upon first start after upgrade, WAS will try to create new machine keys if there isn't any, or query the old machine keys left from the old OS. In this case, there are old machine keys exist but WAS unfortunately cannot access them for some unclear reason. These machine keys are used to encrypt sensitive information in applicationHost.config or web.config (e.g. user password). WAS will not be able to start if there is no machine key it can use.
The following steps of deleting several machine keys used by IIS might help to allow WAS to start - WAS will simply recreate these keys upon start.
For me this started after running Windows Update yesterday. Installed updates since then:
Starting the Windows Process Activation Service (WAS) yielded this error:
From the System event log:
No idea what was happening. I verfied my
administration.config
,applicationHost.config
andredirection.config
contained the expected data.I tried reverting to automatically backed up configuration files from
C:\inetpub\history
, to no result.In the end I took those steps:
Backup all configuration files from
C:\Windows\System32\inetsrv\Config
.Deleted everything HTTP related by unchecking the following from Windows Features (do take a screenshot of which ones are installed so you can easily reinstall the same modules afterwards):
Reboot.
C:\Windows\System32\inetsrv
.<applicationPools>
and<sites>
elements from the backed upapplicationHost.config
into the newly createdC:\Windows\System32\inetsrv\Config\applicationHost.config
.iisreset
from an elevated command prompt just to be sure.And hurray, all my development sites are up again.
After this I compared the backed up and new
applicationHost.config
files and could not spot any major differences. In fact, when I dropped the backed upapplicationHost.config
into the Config directory and running anotheriisreset
everything still worked, so I guess it wasn't that file causing the trouble after all.This happened to me as well after a recent Windows update. Turning off and then turning on the Windows Process Activation Service in Windows Features did the trick for me. Turning this service off will also turn off the following features which you'll have turn back on as well:
Could you do the following checks
I believe it should exist if you hit such WAS startup failure.
This temporary file should exist as well to hit such failure.
Now I suspect you will see errors in iis.log. Could you paste the errors here to narrow down the cause?
My issue (may not be yours) was that there was bad XML in the machine.config file.
If you've just edited the machine.config, and WAS (and IIS) won't start, it's because of this.