2009-07-31 8 views
17

Jak rozwiązać ten problem?Program ASP.NET nie ma dostępu do metabazy IIS

Używam asp.net 2.0, vs2005 i IIS 5.1.

Korzystanie z systemu Windows XP SP3.

Failed to access IIS metabase. 
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code. 

Exception Details: System.Web.Hosting.HostingEnvironmentException: Failed to access IIS metabase. 

The process account used to run ASP.NET must have read access to the IIS metabase (e.g. IIS://servername/W3SVC). For information on modifying metabase permissions, please see http://support.microsoft.com/?kbid=267904. 

Source Error: 

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below. 

Stack Trace: 

[HostingEnvironmentException: Failed to access IIS metabase.] 
    System.Web.Configuration.MetabaseServerConfig.MapPathCaching(String siteID, VirtualPath path) +3591442 
    System.Web.Configuration.MetabaseServerConfig.System.Web.Configuration.IConfigMapPath2.MapPath(String siteID, VirtualPath vpath) +9 
    System.Web.Hosting.HostingEnvironment.MapPathActual(VirtualPath virtualPath, Boolean permitNull) +169 
    System.Web.CachedPathData.GetConfigPathData(String configPath) +389 
    System.Web.CachedPathData.GetConfigPathData(String configPath) +243 
    System.Web.CachedPathData.GetApplicationPathData() +68 
    System.Web.CachedPathData.GetVirtualPathData(VirtualPath virtualPath, Boolean permitPathsOutsideApp) +3536567 
    System.Web.Configuration.RuntimeConfig.GetLKGRuntimeConfig(VirtualPath path) +189 
+1

próbowałeś sugerowane rozwiązanie, które daje Ci IIS - http://support.microsoft.com/?kbid=267904? –

Odpowiedz

26

Prawa użytkownika ASPNET nie zostały ustawione poprawnie.

Jaką wersję ASP.NET używasz?

spróbować

Start -> Run 
Type cmd <HIT RETURN> 
Type c:\Windows\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis -i <HIT RETURN> 

lub jako sugerowane

aspnet_regiis.exe -ga ASPNET 
+0

Dziękuję ... właśnie uratowałeś mój dzień. :) –

+0

@ DD59 - aspnet_regiis.exe -ga ASPNET działa idealnie. Wielkie dzięki :) – picnic4u

3

spróbuj uruchomić aspnet_regiis -i z katalogu dotnet. Ma sposób naprawiania rzeczy.

+0

Miałem szczęście z tym rozwiązaniem w przeszłości z podobnym problemem. – darthnosaj

13

Uruchamianie asnet_regiis z opcją -i może być niewystarczające, ponieważ przyczyną może być brak odpowiednich praw dostępu do programu IIS Metabase dla konta ASPNET.

Proponuję uruchomić go z opcją -ga:

aspnet_regiis.exe -ga ASPNET 

jako ogólny komentarz, ten problem występuje, jeśli jeden instaluje Visual Studio i/lub .NET Framework przed zainstalowaniem IIS.

+1

Próbowałem '-i', który nie działał, ale' -ga ASPNET' zrobił lewę. Dzięki. –

+0

Dziękuję ... właśnie uratowałeś mój dzień. :) –

+0

Dziękuję - to był problem! – bernhardrusch

0

Wystarczy uruchomić następujące polecenia z cmd

%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

Powiązane problemy