When i try to start a ASP.net site on IIS 7.5, i get the following error
BC2000: compiler initialization failed unexpectedly: 0x80070005
Searching around i found a possible solution: Go to security settings of C:\Windows\Temp folder and add Full Control permission to users "NETWORK SERVICE" and IIS_IUSRS.
But i did that and the error goes on.
In my machine %temp% points to C:\Users\sp\AppData\Local\Temp , which have those permissions as well.
I also tried using the utility "aspnet_regiis" to reinstall ASP.
Here's the full event log entry (Application Warning 1310):
Event code: 3007
Event message: A compilation error has occurred.
Event ID: 733bee25fcbe4f0ab74b7fc56ce833d7
Event sequence: 3
Event occurrence: 1
Event detail code: 0
Application information:
Application domain: /LM/W3SVC/5/ROOT-1-129798160562503533
Trust level: Full
Application Virtual Path: /
Process information:
Process ID: 8040
Process name: w3wp.exe
Account name: IIS APPPOOL\myapp
Exception information:
Exception type: HttpCompileException
Exception message: vbc : Fatal (0): error BC2000: compiler initialization failed unexpectedly: 0x80070005
Request information:
User host address: ::1
User:
Is authenticated: False
Authentication Type:
Thread account name: sp-PC\sp
Thread information:
Thread ID: 8
Thread account name: sp-PC\sp
Is impersonating: False
Stack trace: at System.Web.Compilation.AssemblyBuilder.Compile()
at System.Web.Compilation.BuildProvidersCompiler.PerformBuild()
at System.Web.Compilation.CodeDirectoryCompiler.GetCodeDirectoryAssembly(VirtualPath virtualDir, CodeDirectoryType dirType, String assemblyName, StringSet excludedSubdirectories, Boolean isDirectoryAllowed)
at System.Web.Compilation.BuildManager.CompileCodeDirectory(VirtualPath virtualDir, CodeDirectoryType dirType, String assemblyName, StringSet excludedSubdirectories)
at System.Web.Compilation.BuildManager.CompileCodeDirectories()
at System.Web.Compilation.BuildManager.EnsureTopLevelFilesCompiled()
at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters)
So what i did to work was changing the user of the application pool to the machine administrator (IIS Manager > Application Pools > Advanced Settings > Identity). But that don't seem very safe.
So my question is: Why it isnt working with "Built-in Account" (I tried ApplicationPoolIdentity and NetworkService).
Try below steps-
Set True "Enable 32-bit Applications" for your default application pool if you are running on x64 machine.
Grant Full Accesses for NETWORK SERVICE and IIS_IUSRS on
C:\Windows\Temp\
C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\
Grant Full Access to the user "Network Service" to the folder C:\Windows\Temp
User contributions licensed under CC BY-SA 3.0