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