desenv-web-rp.com

Erro - Não é possível acessar o IIS metabase

Depois de instalar o Visual Studio 2012 e abrir minha solução, recebo uma série de erros neste formulário:

O projeto de aplicativo da Web Foo é configurado para usar o IIS.
Não é possível acessar a metabase IIS. Você não tem privilégios suficientes para acessar sites da Web IIS em sua máquina.

Eu entendo isso para cada uma das nossas aplicações web. Coisas que eu tentei:

  1. Executando o Visual Studio como administrador 
  2. Executando aspnet_regiis.exe -ga MyUserName 
  3. Executando o aspnet_regiis.exe -i

Estas parecem ser soluções comuns para este problema, mas eu não tive nenhum sucesso com elas. Há mais alguma coisa que eu possa tentar fazer? 

800
jjathman

Obrigado a todos que responderam. Desde que isso foi fechado por um longo tempo eu não poderia fornecer muito feedback, mas acabei por resolver o meu problema. Tentei muitas dessas outras soluções e elas não corrigiram meu problema, mas tenho certeza de que elas ajudam quando a causa raiz é diferente.

minha solução

Eu resolvi esse problema desativando os recursos do IIS e do .Net Framework no Windows 7 e, em seguida, ligando-os novamente. Parece que esta re-instalação foi o que corrigiu o meu problema. Eu ainda não sei o que causou o problema, mas pelo menos um outro desenvolvedor na minha equipe teve o mesmo problema.

12
jjathman

Em Windows 8 Pro

%systemroot%\inetsrv\config

Em Windows 7 e 8.1 e 10

%systemroot%\System32\inetsrv\config 

(Onde %systemroot% é geralmente C:\Windows)

Navegue até o local apropriado acima no Windows Explorer. Você será bloqueado acesso com um pop-up que diz:

"Você não tem acesso a esta pasta - Clique em continuar para obter permanentemente acesso a esta pasta" 

Clique em 'continuar' para esta pasta e com a pasta Exportar abaixo. Eu mudei o atalho de volta para "Executar como eu" (um membro do domínio e administradores locais) e foi capaz de abrir e implantar a solução.

1403
Gordon Kenyon

Eu acho que você não está executando o visual studio com permissões de administrador. Olha aquilo:

http://bloggingabout.net/blogs/rick/archive/2012/10/04/unable-to-access-the-iis-metabase.aspx

Citar

A solução para isso é simples: inicie o Visual Studio com "Executar como Administrador". Você pode fazer isso clicando com o botão direito do mouse no atalho e Selecionando "Executar como administrador".

243
Felipe Ardila

Acho que encontramos um problema semelhante no trabalho. Para nós, a solução era entrar em Painel de Controle -> Programas e Recursos -> Ativar ou desativar recursos do Windows ... dentro disso, precisávamos selecionar Serviços de Informações da Internet -> Ferramentas de Gerenciamento da Web -> IIS 6 Compatibilidade de Gerenciamento -> IIS Metabase e IIS 6 compatibilidade de configuração. Windows Features dialog showing IIS Metabase option

Dê uma chance e deixe-me saber se isso ajuda!

Nota: Estamos executando o IIS 7.5 no Windows 7 usando o Visual Studio 2005 e 2010 e fazendo coisas com WebServices super-old-school (.asmx) ...

50
Jeff Bridgman

Eu resolvi esse problema concedendo permissões de identidade do AppPool IIS para o %systemroot%\inetsrv\config

33
hopkinsrush

Se você estiver trabalhando em um projeto que não exija o uso do IIS, uma solução alternativa para abrir o projeto com esse erro é simplesmente clicar com o botão direito no projeto descarregado e clicar em editar, procure por:

<ProjectExtensions>
    <VisualStudio>
      <FlavorProperties GUID="">
        <WebProjectProperties>
          <UseIIS>True</UseIIS>
        </WebProjectProperties>
      </FlavorProperties>
    </VisualStudio>
  </ProjectExtensions>
</Project>

e defina o USEIIS para falso

<UseIIS>False</UseIIS>

recarregue o projeto clicando com o botão direito após salvar as alterações.

28
nologo

Eu tive dois tipos separados de problemas que levaram a esse erro, e pensei em compartilhar ...

1. The directory was on an network share and due to UAC restrictions, was 
   unable to be accessed -- even when running as an admin.
2. The directory was on a drive that didn't exist...

Ambos resultam de uma infeliz (imo) escolha da MS para colocar coisas no diretório Documentos ou Meu Documento, combinando com mensagens de erro realmente ruins. Em ambos os casos acima, o problema fundamental era que o arquivo de configuração IISExpress entra em Meus Documentos, e não existia ou não podia ser acessado.

18
jmoreno

Eu tive esse problema - os sintomas eram os mesmos, mas o problema que tive foi que eu tinha definido a pasta "Meus documentos" para estar em um compartilhamento de rede, e o compartilhamento não estava acessível. 

O problema raiz era que os arquivos de configuração IIS localizados em% USERPROFILE%\Documents não estão acessíveis. Depois que mudei a localização da pasta "Meus documentos" (modifiquei o valor reg), ela começou a funcionar novamente.

Eu sei que isso pode não ser um cenário comum que você pode encontrar, mas eu postei aqui porque ele dá os mesmos sintomas.

12
sargeMonkey

Em um windows 81, a partir de um prompt de comando admin, use: 

icacls "C:\Windows\System32\inetsrv\config" /t /grant "IIS AppPool\DefaultAppPool":(R)

Em seguida, volte no VS, clique com o botão direito do mouse no projeto com falha, escolha Recarregar.

Crédito para: Visão geral sobre permissões do IIS7 - ApplicationPoolIdentity

12
lnaie

Navegando para a pasta: %systemroot%\System32\inetsrv\config apresenta um diálogo de segurança. Clique em continuar e isso pode resolver o problema. Isso funcionou em duas máquinas Win 10/VS 2017/IIS separadas.

10
Jesse Mwangi

Você pode se deparar com esse problema e ter o mesmo problema que eu. Eu "resolvi" isso antes e depois a falta de energia e o computador falharam, não sei por que uma configuração registro foi revertida, mas é SOURCE do meu problema.

  1. Eu tentei todo o funcionamento como administrador
  2. Todos os IIS/IIS expressam reinstalações. 
  3. Vários "hacks"

Desceu para ter que consertar o registro novamente.

  1. Não poderia como administrador até mesmo abrir regedit (Precisa acessar o registro desde que o problema não é com o template admin gpedit.msc) 

  2. UnHookExec.inf na área de trabalho 

Basta salvar o UnHookExec.inf e instalá-lo clicando com o botão direito e selecionando instalar. A instalação do arquivo não mostrará nenhum popup ou caixa de aviso. http://www.tweakandtrick.com/2011/04/enable-regedit-registry-editor.html

  1. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorador\User Shell Folders\Personal apontando para o compartilhamento de arquivos inexistente. Mudar isso para o caminho local resolveu esse problema para mim. - Pasi Savolainen 14 de julho de 2014 às 8:41

(alterado de \\cs2data\home\stickelt\my documents para c:\dev)

Agora ALL is good e o Visual Studio abriram a solução com 15 projetos e se conecta ao IIS e não reclama por não conseguir acessar os metadados do iis

Eu nunca tinha corrido para isso antes, como ninguém no trabalho atual tinha esse problema (muitos estão aqui há muito tempo, alguns tem clones de outras máquinas que "funcionaram" e muitos estão em outro domínio, etc.) 

7
Tom Stickel

Eu me deparei com isso hoje e corrigi o problema removendo o IISUrl do arquivo de projeto:

  1. Clique com o botão direito do projeto
  2. Clique em Editar
  3. Exclua a seguinte linha:

     <IISUrl>http://localhost:xxxxx </IISUrl>
    
  4. Recarregar projeto

  5. Agora, adicione um novo diretório virtual IIS clicando com o botão direito do mouse em Projeto> Propriedades> Web e selecionando Usar servidor web local IIS (desmarque Usar IIS Express) e clique no botão Criar diretório virtual.
7
Rushby

Acabei de ter esse problema hoje e descobri que não abri o VS como 'Executar como Administrador'. Depois de fazer isso, consegui publicar o Serviço.

6
Saurabh Soni

Se você tiver permissões de administrador, clique com o botão direito do mouse no ícone do Visual Studio> propriedades e, em seguida, selecione "Executar como administrador". Você pode executar o visaul studio como administrador diretamente. Desta forma, formal e tão básico.

4
Ramazan Sağır

Mudar esta chave funcionou para mim:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Pastas de Shell de usuário\Pessoal

A localização não existia.

3
garryp

Além do answer by @nologo, eu também tive que usar o IIS. Então eu mudei o 

<UseIIS>True</UseIIS>

para 'False' primeiro.

  • Abriu a solução e garantiu que o projeto pudesse ser carregado.
  • Feche a solução e essa instância do Visual Studio
  • Altere o valor para 'True' novamente
  • Abra a solução. Dessa vez, não recebi nenhum erro/aviso. Eu também poderia executar com Ctrl + F5 ou F5 sem nenhum problema enquanto meu projeto estava mapeado para um site IIS.
3
KSK

Vá para o diretório raiz do seu projeto e encontre o seguinte arquivo:

YourProjectName.csproj.user - dentro dele, certifique-se de que UseIISExpress está definido como false :

<UseIISExpress>false</UseIISExpress>


Se isso não funcionar, tente também o seguinte e tente novamente:

YourProjectName.csproj - dentro do arquivo principal do projeto, certifique-se de que ambos os métodos UseIIS e UseIISExpress estejam configurados para false :

<UseIIS>True</UseIIS>
<UseIISExpress>false</UseIISExpress>


Depois de alterar isso, consegui carregar o projeto novamente.

Nota: Certifique-se de executar o seu VS como administrador, como mencionado nas outras respostas.

2
E2rdo

Eu também tive um problema semelhante. Minha solução é uma extensão da resposta "Executar como administrador", que espero que seja útil para alguém.

Eu estava executando o VS2012 e quase toda vez que eu tinha que fazer o clique direito, Executar como administrador. Eu me cansei disso, então eu entrei em suas propriedades no atalho, cliquei em avançado e, em seguida, cliquei na opção "Executar como administrador". Agora o VS2012 sempre é executado como administrador sempre que eu abro desse atalho.

A partir desse bit de atalho é importante. Eu continuei a ramificar meu projeto e baixei o ramo para uma nova pasta local. Então, quando abri o atalho, não tive problema. Mas se eu fui diretamente para a pasta, e executei o projeto localmente sem o atalho, ele não executado como administrador e eu recebi este erro.

Uma vez eu abri VS2012 como de costume, em primeiro lugar, em seguida, usando Arquivo/Abrir/Projeto funcionou novamente sem problemas. (porque eu estava correndo como admin). Mas eu não estava executando como admin quando abri a solução usando o gerenciador de arquivos do windows.

As outras sugestões parecem um tanto extremas, mas isso é bem simples, então eu tentaria fazer isso primeiro.

Espero que isso tenha sido útil.

2
Francis Rodgers

Este parece ser um daqueles tipos de erros "Todos os erros conduzidos a esta mensagem". 

O meu foi que o App Pool foi apenas desligado. Voltei a ligá-lo e tudo funcionou bem.

2
Nathan Tregillus

Eu tentei tudo acima. O crédito vai para todas as respostas acima. Tendo tentado todas as sugestões por conta própria, acabei de reunir essa combinação de sugestões em uma ordem que fazia sentido para mim. Observe que minha pasta Documentos está em uma unidade compartilhada. O material subst/IISExpress não é aplicável, a menos que você esteja no mesmo barco.

  • Configure o VS para ser executado como administrador
  • Desinstalar IIS através de Adicionar/Remover Programas, Funcionalidades do Windows
  • Reinicialização
  • Execute o WinRAR ou algo semelhante como administrador e arquivo C:\windows\system32\inetsrv\
  • Execute cmd como admin e rmdir /s c:\windows\system32\inetsrv\ para remover completamente todos os vestígios da última instalação. Deixe o cmd elevado Prompt aberto para mais tarde.
  • Reinstale IIS com IIS 6 Compatibilidade da Metabase (duvido que isso seja necessário)
  • Deixar o AppPool padrão e o Site padrão como estão (eu já havia excluído os dois)
  • Ran C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ga MYDOMAIN\scottt732
  • Ran C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i

Além disso, como minha pasta Documentos está em uma unidade de compartilhamento, eu estava tendo IIS problemas Express. Eu não uso/like IIS Express, mas o Visual Studio reclamou sobre isso.

  • De elevado cmd Prompt, correu subst U: c:\Temp. Criado C:\Temp\Documents\ e copiado a pasta IISExpress da minha unidade U.
  • Criado CustomUserHome chave em HKCU\Software\Microsoft\IISExpress com C:\Temp\Documents\IISExpress
  • Isso me permitiu obter o Visual Studio para abrir meus projetos da web e editar as propriedades. Eu ajustei os projetos para armazenar as configurações do servidor da web em um arquivo do usuário e ajustei-o para usar um URL personalizado (não tenho certeza se isso era necessário)
  • Eu posso/não ter que executar o comando subst toda vez que eu reiniciar. Não se importe.

E depois de jogar a toalha 3 vezes e gastar aproximadamente ~ 6 horas, posso abrir projetos da Web no Visual Studio (Atualização 2 de 2015). 

2
scottt732

Mais uma coisa que você poderia tentar:

  • Verifique se você tem atualizações pendentes do Windows. 
  • Se você fizer isso, por favor, reinicie antes de tentar qualquer outra coisa.

Eu costumo nunca desligar minha máquina, então eu tive muitos deles esperando por uma reinicialização. E isso consertou.

2
Thomas Eyde

Eu fiz um reparo do Visual Studio 2015 para resolver isso. O reparo demorou muito tempo, mas resolveu a questão enquanto fazia muito do que foi dito acima. Estou executando o Win 7 enterprise. 

1
Kenmeister

Abra o comando visual studio Prompt e digite abaixo o comando e execute

aspnet_regiis -ga machinename\ASPNET

Depois de executar o comando acima, redefina a IIS e teste o aplicativo que resolve seu problema.

Se o comando acima não resolver o problema, tente executar o comando abaixo em visual studio command Prompt:-

aspnet_regiis -i

Alternativamente, podemos executar o comando acima de nosso comando do windows Prompt também

Vá para o menu Iniciar e abra Executar, digite e clique em OK

%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe –I

Depois disso Redefinir o IIS e testar o aplicativo que resolve seu problema

1
user3921752

Acabei de ter o mesmo problema comigo hoje. E eu achei chato. Embora eu tenha outros dois sites em desenvolvimento pelo mesmo IIS, ele ainda não conseguiu criar um novo site. Estranho, mas eu fiz isso.

  • Excluir o site do IIS
  • Criar novo site, dê um nome "new_site"
  • Selecione Pool de Aplicativos diferente do próprio nome do site. Então, não vai ser confundir com as configurações padrão.
  • Mantenha o IP "não atribuído" se você o estiver executando da mesma máquina
  • dar-lhe alguma porta não utilizada
  • Execute o Visual Studio como "Executar como administrador" clicando com o botão direito do mouse no atalho executável do VS. 
  • Você terminou!

Você não precisa desligar/reinstalar nada além do que afirmei desde que funciona.

Deixe-me saber se alguém teve o mesmo problema assim como eu e resolvido da mesma maneira. Eu acho que não foi o problema, mas uma maneira errada de criar um site no host local que o Visual Studio rejeita para abrir.

Espero que isso ajude os novatos. 

1
KMX

Eu tive o mesmo problema depois de adicionar recurso de este link depois eu segui este artigo o problema foi embora.

1
Jackboys
  1. Crie um atalho para o "devenv.exe"
  2. selecione a opção "Executar como administrador" para o atalho
  3. doble clique no atalho e reabra seu projeto
1
Mauricio Gracia Gutierrez

Eu tive o mesmo problema. Para mim, eu estava usando os mesmos documentos que em uma instalação anterior do Windows. Basta remover a pasta IISExpress dos meus documentos.

0
Dennis van Dalen

IIS Usuários expressos - usando meus documentos em um compartilhamento de rede

Se o seu IIS Express application.config estiver localizado em uma unidade de rede, verifique se a unidade está mapeada e conectada em Meu computador.

Eu estava enfrentando esse problema e quando eu remapear as unidades de rede em Meu computador, o problema foi resolvido.

0
JohnCooling

Comando de execução: 

c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -ga %username%
c:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
0
Denis Prohorchik

No meu caso, a única coisa que me ajudou é reinstalar (ou reparar é mais fácil) IIS 10.0 Express

0
Roman Borovets

Eu tive um problema parecido. O Visual Studio não carregava nenhum projeto da Web e mostrava o erro: a criação do diretório virtual <myproj: myport> falhou. Não é possível acessar a metabase IIS.

No meu caso, era na verdade o IISExpress que estava na raiz do problema. Clicar com o botão direito no IIS Express em Programas e Recursos no painel de controle e escolher o reparo resolveu o problema em menos de dois minutos.

0
JGa

Você pode resolver esse problema desmarcando as ferramentas IIS na lista de recursos do Windows. Em seguida, repare sua instalação do Visual Studio 2013 e verifique se o Web Developer está marcado. Ele instalará o IIS 8 com o qual o VS funcionará bem.

0
Ray Koopa

Estou usando o Win 8 Pro e o VS 2013. Depois de tentar tudo nesta página ... eu simplesmente reinstalei o IIS Express 8 e tudo funciona bem agora (mesmo sem ser executado como administrador).

Minha conclusão é que este é um erro bastante genérico e há múltiplas causas.

0
Yossi

Eu experimentei isso em uma máquina Windows 10 Professional de 64 bits, e nenhuma das outras respostas postadas aqui ajudou. Começou a acontecer depois que eu experimentei uma tela azul da morte, e descobri que o UAC havia se ligado novamente. Executar o Visual Studio como Administrador sozinho não era a solução, já que meu controle de origem estava em uma unidade de rede, que o Visual Studio não podia acessar com o UAC. 

Desligar o UAC via GPEDIT resolveu o problema.

0
Jonathon Cowley-Thom

Na minha mensagem, além de reclamar sobre "Não é possível acessar a metabase IIS", ele também menciona não pode acessar "<IISUrl>http://localhost:6416/</IISUrl>". Clique com o botão direito no projeto unload, clique em Edit, encontre a linha "<IISUrl>http://localhost:6416/</IISUrl>", comente. Recarregue e deve funcionar. Isso tem a ver com o administrador não tem permissão para acessar esse endereço.

0
user2686690