web-dev-qa-db-fra.com

Erreur - Impossible d'accéder à la IIS métabase

Après l'installation de Visual Studio 2012 et l'ouverture de ma solution, une série d'erreurs se présente sous cette forme:

L'application Web Project Foo est configurée pour utiliser IIS.
Impossible d'accéder à la métabase IIS. Vous ne disposez pas des privilèges suffisants pour accéder aux sites Web IIS sur votre ordinateur.

Je reçois ceci pour chacune de nos applications Web. Choses que j'ai essayées:

  1. Exécution de Visual Studio en tant qu'administrateur 
  2. Exécution de aspnet_regiis.exe -ga MyUserName 
  3. Exécution de aspnet_regiis.exe -i

Celles-ci semblent être des solutions communes à ce problème mais je n’ai eu aucun succès avec elles. Y a-t-il autre chose que je puisse essayer de faire? 

800
jjathman

Merci à tous ceux qui ont répondu. Puisqu'il était fermé depuis longtemps, je ne pouvais pas donner beaucoup de commentaires, mais j'ai finalement résolu mon problème. J'ai essayé plusieurs de ces solutions et elles n'ont pas résolu mon problème, mais je suis sûr qu'elles aident lorsque la cause fondamentale est différente.

Ma solution

J'ai résolu ce problème en désactivant les fonctionnalités IIS et .Net Framework dans Windows 7, puis en les réactivant. Il semble que cette réinstallation est ce qui a résolu mon problème. Je ne sais toujours pas ce qui a causé le problème, mais au moins un autre développeur de mon équipe a eu le même problème.

12
jjathman

Sur Windows 8 Pro

%systemroot%\inetsrv\config

Sur Windows 7 et 8.1 et 10

%systemroot%\System32\inetsrv\config 

(Où %systemroot% est habituellement C:\Windows)

Accédez à l'emplacement approprié ci-dessus dans l'Explorateur Windows. Votre accès sera bloqué par une fenêtre contextuelle indiquant:

"Vous n'avez pas accès à ce dossier - Cliquez sur Continuer pour accéder de manière permanente à ce dossier" 

Cliquez sur 'Continuer' pour ce dossier et avec le dossier Exporter en dessous. J'ai remplacé le raccourci par "Exécuter en tant que moi" (membre du domaine et administrateurs locaux) et j'ai pu ouvrir et déployer la solution.

1403
Gordon Kenyon

Je pense que vous n'exécutez pas Visual Studio avec des autorisations d'administrateur. Regarde ça:

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

Citer

La solution à ce problème est simple: démarrez Visual Studio avec "Exécuter en tant qu’administrateur ". Vous pouvez le faire en cliquant avec le bouton droit sur le raccourci et en sélectionnant "Exécuter en tant qu'administrateur".

243
Felipe Ardila

Je pense que nous avons rencontré un problème similaire au travail. Pour nous, la solution consistait à accéder au Panneau de configuration -> Programmes et fonctionnalités -> Activer ou désactiver des fonctionnalités Windows ... Dans ce but, nous devions sélectionner Internet Information Services -> Outils de gestion Web -> IIS 6. Compatibilité de gestion -> IIS Métabase et IIS 6 compatibilité de configuration .  Windows Features dialog showing IIS Metabase option

Essayez et laissez-moi savoir si cela aide!

Remarque: Nous utilisons IIS 7.5 sur Windows 7 à l'aide de Visual Studio 2005 et 2010, et réalisons des tâches avec les services Web super-old school (.asmx) ...

50
Jeff Bridgman

J'ai résolu ce problème en accordant des autorisations d'identité IIS AppPool au %systemroot%\inetsrv\config

33
hopkinsrush

Si vous travaillez sur un projet ne nécessitant pas l'utilisation d'IIS, une solution de contournement pour ouvrir le projet avec cette erreur consiste à simplement cliquer avec le bouton droit sur le projet non chargé et à cliquer sur Editer, recherchez:

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

et mettre USEIIS à false

<UseIIS>False</UseIIS>

rechargez le projet en faisant un clic droit dessus après avoir enregistré les modifications.

28
nologo

J'ai eu deux types de problèmes distincts qui ont conduit à cette erreur, et j'ai pensé partager ...

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...

Ces deux problèmes découlent d’un choix malheureux (imo) de la part de MS de mettre des éléments dans le répertoire Documents ou My Document, combinés avec des messages d’erreur vraiment déplaisants. Dans les deux cas ci-dessus, le problème fondamental était que le fichier de configuration IISExpress était placé dans Mes documents et qu'il n'existait pas ou ne pouvait pas être consulté.

18
jmoreno

J'ai eu ce problème - les symptômes étaient les mêmes, mais le problème était que j'avais configuré le dossier "Mes documents" sur un partage réseau et que le partage n'était pas accessible. 

Le problème fondamental était que les fichiers de configuration IIS situés dans% USERPROFILE%\Documents ne sont pas accessibles. Une fois que j'ai changé l'emplacement du dossier "Mes documents" (j'ai modifié la valeur reg), cela a recommencé à fonctionner.

Je sais que ce n'est peut-être pas un scénario courant que vous pourriez rencontrer, mais je l'ai posté ici car il donne les mêmes symptômes.

12
sargeMonkey

Sur une fenêtre 81, à partir d'une invite de commande d'admin, utilisez: 

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

Revenez ensuite dans VS, cliquez avec le bouton droit sur le projet en échec, choisissez Recharger.

Crédit pour: Vue d'ensemble des autorisations IIS7 - ApplicationPoolIdentity

12
lnaie

Naviguer dans un dossier: %systemroot%\System32\inetsrv\config présente une boîte de dialogue de sécurité. Cliquez sur Continuer pour résoudre le problème. Cela a fonctionné sur deux machines Win 10/VS 2017/IIS distinctes.

10
Jesse Mwangi

Vous pourriez rencontrer ce problème et avoir le même problème que moi. Je l'ai "résolu" avant, puis une panne de courant et un ordinateur sont tombés en panne, je ne sais pas pourquoi un paramètre registry a été rétabli mais c'est la source de mon problème.

  1. J'ai tout essayé en tant qu'administrateur
  2. Tous les IIS/IIS express se réinstallent. 
  3. Divers "hacks"

Est venu à avoir à réparer le registre à nouveau.

  1. Impossible en tant qu'administrateur d'ouvrir même regedit (nécessité d'accéder au registre, car le problème n'est pas lié au modèle d'administration gpedit.msc) 

  2. UnHookExec.inf sur le bureau 

Il suffit de sauvegarder UnHookExec.inf et de l’installer en cliquant avec le bouton droit de la souris et en sélectionnant l’installation. L'installation du fichier ne fera apparaître aucune boîte de dialogue ni aucune boîte de notification . http://www.tweakandtrick.com/2011/04/enable-regedit-registry-editor.html

  1. HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Dossiers de shell utilisateur\Personnel pointant vers un partage de fichiers inexistant. Changer cela en chemin local a résolu ce problème pour moi. - Pasi Savolainen 14 juil. 14 à 8:41

(changé de \\cs2data\home\stickelt\my documents à c:\dev)

Maintenant ALL est bon et Visual Studio a ouvert la solution avec 15 projets et s'est connecté à IIS et ne se plaint pas de l'impossibilité d'accéder aux métadonnées iis.

Je n'avais jamais rencontré cela auparavant, car personne à l'emploi actuel n'avait ce problème (beaucoup sont ici depuis longtemps, certains ont des clones d'autres machines qui "fonctionnent" et beaucoup sont sur un autre domaine, etc.). 

7
Tom Stickel

Je suis tombé sur ce problème aujourd'hui et j'ai résolu le problème en supprimant IISUrl du fichier Project:

  1. Projet clic droit
  2. Cliquez sur Modifier
  3. Supprimer la ligne suivante:

     <IISUrl>http://localhost:xxxxx </IISUrl>
    
  4. Recharger le projet

  5. Ajoutez maintenant un nouveau répertoire virtuel IIS en cliquant avec le bouton droit de la souris sur Projet> Propriétés> Web et en sélectionnant Utiliser le serveur Web local IIS (décochez l'option Utiliser IIS Express) et en cliquant sur le bouton Créer un répertoire virtuel.
7
Rushby

Je viens d'avoir ce problème aujourd'hui et j'ai constaté que je n'avais pas ouvert VS en tant que "Exécuter en tant qu'administrateur" . Après cela, j'ai pu publier le service.

6
Saurabh Soni

Si vous disposez d'autorisations d'administrateur, cliquez avec le bouton droit de la souris sur l'icône Visual Studio> Propriétés, puis sur Avancé, cochez la case «Exécuter en tant qu'administrateur» . Vous pouvez exécuter directement visul studio en tant qu'administrateur . De cette façon, formel et très basique.

4
Ramazan Sağır

Changer cette clé a fonctionné pour moi:

HKEY_CURRENT_USER\Logiciels\Microsoft\Windows\CurrentVersion\Explorer\Dossiers Shell utilisateur\Personnel

L'emplacement n'existait pas.

3
garryp

En plus du answer by @nologo, je devais également utiliser IIS. Alors j'ai changé le 

<UseIIS>True</UseIIS>

pour 'Faux' en premier.

  • Ouvre la solution et s'assure que le projet peut être chargé.
  • Fermez la solution et cette instance de Visual Studio
  • Changer la valeur à 'True' à nouveau
  • Ouvrez la solution ..__ Cette fois, je n’ai reçu aucune erreur/avertissement. Je pouvais également utiliser Ctrl + F5 ou F5 sans problème pendant que mon projet était mappé sur un site Web IIS.
3
KSK

Accédez au répertoire racine de votre projet et recherchez le fichier suivant:

YourProjectName.csproj.user - à l'intérieur, assurez-vous que UseIISExpress est défini sur false:

<UseIISExpress>false</UseIISExpress>


Si cela ne fonctionne pas, essayez ce qui suit et essayez à nouveau:

YourProjectName.csproj - dans le fichier de projet principal, assurez-vous que UseIIS et UseIISExpress sont définis sur false:

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


Après les avoir modifiées, j'ai pu charger le projet à nouveau.

Remarque: Assurez-vous que vous utilisez votre VS en tant qu'administrateur, comme indiqué dans les autres réponses.

2
E2rdo

J'ai aussi eu un problème similaire. Ma solution est une extension de la réponse "Exécuter en tant qu'administrateur" que j'espère que quelqu'un trouvera utile.

Je courais VS2012 et presque chaque fois que je devais faire le clic droit, exécuter en tant qu'administrateur. J'en avais marre de cela alors, au lieu de cela, je suis allé dans ses propriétés sur le raccourci, cliqué sur avancé, puis sur l'option "Exécuter en tant qu'administrateur". Maintenant, VS2012 s’exécute toujours en tant qu’administrateur chaque fois que je l’ouvre à partir de ce raccourci.

Le de ce raccourci est important. J'ai procédé à la branche de mon projet et téléchargé la branche dans un nouveau dossier local. Ensuite, quand je l'ai ouvert depuis le raccourci, je n'ai eu aucun problème. Mais si je suis allé directement dans le dossier et ai exécuté le projet localement sans le raccourci, il ne s'est pas exécuté en tant qu'administrateur et j'ai eu cette erreur.

Une fois que j’ai ouvert VS2012 comme d’habitude, puis en utilisant Fichier/Ouvrir/Projet, cela n’a pas posé de problème. (parce que je courais en tant qu'administrateur). Mais je ne courais pas en tant qu'administrateur lorsque j'ai ouvert la solution à l'aide du gestionnaire de fichiers Windows.

Les autres suggestions semblent un peu extrêmes, mais comme c'est assez simple, j'essayerais plutôt d'essayer d'abord.

J'espère que c'était utile.

2
Francis Rodgers

Cela semble être l’un de ces bogues du type "Toutes les erreurs mènent à ce message". 

Le mien était que la piscine d'applications était juste éteinte. Je l'ai rallumé et tout a bien fonctionné.

2
Nathan Tregillus

J'ai tout essayé ci-dessus. Le crédit va à toutes les réponses ci-dessus. Après avoir essayé toutes les suggestions par eux-mêmes, je viens de rassembler cette combinaison de suggestions dans un ordre qui me semblait logique. Remarque le dossier Mes documents se trouve sur un lecteur partagé. La substance subst/IISExpress n'est pas applicable sauf si vous êtes dans le même bateau.

  • Configurer le VS pour s’exécuter en tant qu’administrateur
  • Désinstallez IIS via Ajout/Suppression de programmes, Fonctionnalités Windows
  • Redémarrer
  • Exécutez WinRAR ou quelque chose de similaire en tant qu'administrateur et archiveur C:\windows\system32\inetsrv\
  • Exécutez cmd en tant qu'administrateur et rmdir /s c:\windows\system32\inetsrv\ pour supprimer complètement toutes les traces de la dernière installation. Laissez l'invite cmd élevée ouverte pour plus tard.
  • Réinstallez IIS avec IIS 6 Compatibilité de la métabase (doutez que cela soit nécessaire)
  • Laisser AppPool par défaut et le site Web par défaut tels quels (j'avais précédemment supprimé les deux)
  • 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

De plus, mon dossier Documents se trouvant sur un lecteur partagé, je rencontrais des problèmes avec IIS Express. Je n'utilise pas/like IIS Express, mais Visual Studio s'en est plaint.

  • À partir de l'invite cmd élevée, exécutez subst U: c:\Temp. Créé C:\Temp\Documents\ et copié le dossier IISExpress à partir de mon lecteur U.
  • Clé CustomUserHome créée dans HKCU\Software\Microsoft\IISExpress avec C:\Temp\Documents\IISExpress
  • Cela m'a permis d'obtenir que Visual Studio ouvre mes projets Web et modifie les propriétés. J'ai peaufiné les projets pour stocker les paramètres du serveur Web dans un fichier utilisateur et l'ajusté pour utiliser une URL personnalisée (ne sachant pas si cela était nécessaire)
  • Il se peut que je n’ai pas à exécuter la commande subst chaque fois que je redémarre. Ne t'en fais pas.

Et après avoir jeté l'éponge trois fois et passé environ 6 heures, je peux ouvrir des projets Web dans Visual Studio (2015 Update 2). 

2
scottt732

Une dernière chose à essayer:

  • Vérifiez si vous avez des mises à jour Windows en attente. 
  • Si vous le faites, veuillez redémarrer avant d’essayer quoi que ce soit.

J'ai tendance à ne jamais éteindre ma machine, alors beaucoup d'entre eux attendaient un redémarrage Et cela a réglé le problème.

2
Thomas Eyde

J'ai réparé Visual Studio 2015 pour résoudre ce problème ..___ La réparation a duré longtemps, mais le problème n'a pas été résolu, mais une grande partie de ce qui précède n'a pas été résolu. Je suis sous Windows 7 entreprise. 

1
Kenmeister

Ouvrez la commande Visual Studio Invite et tapez ci-dessous la commande et exécutez

aspnet_regiis -ga machinename\ASPNET

Après avoir exécuté la commande ci-dessus, réinitialisez la IIS et testez l'application qui résout votre problème.

Si la commande ci-dessus ne résout pas votre problème, essayez d’exécuter la commande ci-dessous dans visual studio command Prompt:-

aspnet_regiis -i

Alternativement, nous pouvons exécuter la commande ci-dessus à partir de notre commande windows Invite également

Allez dans le menu Démarrer et ouvrez Exécuter et entrez et cliquez sur OK

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

Après cela, réinitialisez IIS et testez l'application qui résout votre problème.

1
user3921752

Je viens d'avoir le même problème avec moi aujourd'hui. Et je l'ai trouvé ennuyeux. Bien que deux autres sites Web déjà en développement soient créés à partir du même IIS, je n'ai toujours pas pu créer de nouveau site. Étrange, mais j'ai fait ça.

  • Supprimer le site d'IIS
  • Créez un nouveau site, nommez-le "new_site"
  • Sélectionnez un pool d'applications autre que le nom du site lui-même. Donc, il ne sera pas foiré avec les paramètres par défaut.
  • Conservez l'adresse IP "non attribuée" si vous l'exécutez à partir de la même machine
  • donnez-lui un port inutilisé
  • Exécutez Visual Studio en tant qu '"Exécuter en tant qu'administrateur" en cliquant avec le bouton droit de la souris sur le raccourci exécutable de VS. 
  • Vous avez terminé!

Vous n'avez pas besoin d'éteindre/de réinstaller autre chose que ce que j'ai indiqué car cela fonctionne.

Faites-moi savoir si quelqu'un a le même problème que moi et est résolu de la même manière. Je pense que ce n'était pas le problème, mais une mauvaise façon de créer un site Web sur localhost que Visual Studio refuse d'ouvrir.

J'espère que cela aidera les débutants. 

1
KMX

J'ai eu le même problème après avoir ajouté une fonctionnalité de ce lien après j'ai suivi cet article le problème avait disparu.

1
Jackboys
  1. Créer un raccourci vers le "devenv.exe"
  2. sélectionnez l'option "Exécuter en tant qu'administrateur" pour le raccourci
  3. double-cliquez sur le raccourci et rouvrez votre projet

J'ai eu le même problème. Pour moi, c’est que j’utilisais les mêmes documents que lors d’une précédente installation de Windows. Supprimez simplement le dossier IISExpress de mes documents.

0

IIS Utilisateurs Express - Utilisation de Mes documents sur un partage réseau

Si votre IIS Express application.config se trouve sur un lecteur réseau, assurez-vous que le lecteur est mappé et connecté dans Poste de travail.

Je faisais face à ce problème et lorsque j'ai re-mappé les lecteurs réseau dans Poste de travail, le problème a été résolu.

0
JohnCooling

Exécuter la commande: 

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

Dans mon cas, la seule chose qui m'a aidé est de réinstaller (ou la réparation est plus facile) IIS 10.0 Express

0
Roman Borovets

J'avais un problème similaire. Visual Studio ne charge aucun projet Web et affiche l'erreur suivante: la création du répertoire virtuel <myproj: myport> a échoué. Impossible d'accéder à la métabase IIS.

Dans mon cas, c’est en fait IISExpress qui est à l’origine du problème. Cliquez avec le bouton droit de la souris sur IIS Express dans Programmes et fonctionnalités du panneau de configuration, puis sélectionnez Réparer pour résoudre le problème en moins de deux minutes.

0
JGa

Vous pouvez résoudre ce problème en décochant les outils IIS dans votre liste de fonctionnalités Windows. Ensuite, réparez votre installation de Visual Studio 2013 et assurez-vous que Web Developer est coché. Il installera IIS 8 avec lequel VS fonctionnera correctement.

0
Ray Koopa

J'utilise Win 8 Pro et VS 2013 . Après avoir tout essayé dans cette page ... j'ai simplement réinstallé IIS Express 8 et tout fonctionne correctement à présent (même sans exécuter l'administrateur).

Ma conclusion est qu'il s'agit d'une erreur plutôt générique et qu'il existe plusieurs causes fondamentales.

0
Yossi

J'ai vécu cela sur un ordinateur Windows 10 Professionnel 64 bits, et aucune des réponses publiées ici ne m'a aidé. Cela a commencé après un écran bleu, et j'ai découvert que l'UAC s'était rallumé. L'exécution de Visual Studio en tant qu'administrateur seul n'était pas la solution car mon contrôle de code source se trouvait sur un lecteur réseau auquel Visual Studio ne pouvait pas accéder avec UAC activé. 

Désactiver le contrôle de compte d'utilisateur via GPEDIT a résolu le problème.

0

Dans mon message, à part se plaindre de "Impossible d'accéder à la métabase IIS", il est également indiqué qu'il est impossible d'accéder à "<IISUrl>http://localhost:6416/</IISUrl>". Cliquez avec le bouton droit sur le projet de déchargement, cliquez sur Modifier, recherchez la ligne "<IISUrl>http://localhost:6416/</IISUrl>" et commentez-la. Rechargez et ça devrait marcher. Cela a à voir avec l'administrateur n'a pas la permission d'accéder à cette adresse.

0
user2686690