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

842

Après avoir installé Visual Studio 2012 et ouvert ma solution, je reçois une série d'erreurs sous cette forme:

Le projet d'application Web Foo est configuré 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 l'obtiens pour chacune de nos applications Web.


Ce que j'ai essayé:

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

Celles-ci semblent être des solutions courantes à ce problème, mais je n'y suis pas parvenu.

Y a-t-il autre chose que je peux essayer de faire?

jjathman
la source
27
Exécutez-vous définitivement en tant qu'administrateur? Obtenez-vous une fenêtre de dialogue Contrôle de compte d'utilisateur lorsque vous lancez VS?
Mike Simmons
43
j'ai eu le même problème et quand j'ai exécuté VS en tant qu'administrateur (clic droit et sélectionnez exécuter en tant qu'administrateur), cela a fonctionné
Shyju
4
Pour tous ceux qui viendront ici plus tard, 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. Quelque part dans cette réinstallation, cela a résolu mon problème.
jjathman
2
Avant de suivre les conseils publiés ici, veuillez vérifier si vous avez des mises à jour Windows en attente. J'en ai eu beaucoup qui avaient besoin d'un redémarrage, la fin des mises à jour a résolu le problème.
Thomas Eyde
2
J'ai eu le même problème après l'ajout d'une fonctionnalité à partir de ce lien , puis j'ai lu cet article, le problème avait disparu.
JB's

Réponses:

1447

Sous Windows 8 Pro :

%systemroot%\inetsrv\config

Sous Windows 7 et 8.1 et 10

%systemroot%\System32\inetsrv\config 

(Où %systemroot%est généralement C:\Windows)

Accédez à l'emplacement approprié ci-dessus dans l'Explorateur Windows. Vous serez bloqué l'accès avec une popup qui dit:

"Vous n'avez pas accès à ce dossier - Cliquez sur continuer pour accéder en permanence à ce dossier"

Cliquez sur «continuer» pour ce dossier et avec le dossier d'exportation en dessous. J'ai modifié le raccourci en «Exécuter en tant que moi» (membre du domaine et administrateurs locaux) et j'ai pu ouvrir et déployer la solution.

Gordon Kenyon
la source
44
Cela a fonctionné, merci. Juste une note, le dossier config peut être situé dans C: \ Windows \ System32 \ inetsrv \ config
Alexandr Nikitin
82
% systemroot% \ System32 \ inetsrv \ config (c'est-à-dire C: \ WINDOWS \ System32 \ inetsrv \ config) sur Windows 8.1 fonctionne bien
Stefano
13
% systemroot% \ System32 \ inetsrv \ config était le bon chemin pour Windows 7
Aidin
44
@Nate, le problème est que lorsque VS charge le projet, il essaie d'accéder à la métabase IIS, qui se trouve dans ce répertoire. IIS, sur votre ordinateur, est verrouillé sous les privilèges d'administrateur. Ainsi, lorsque vous ouvrez VS en tant qu'utilisateur normal, vous ne pouvez pas accéder à la métabase d'IIS et VS ne peut pas charger le projet. (Sous Windows 7+, vous accédez à tout en tant qu'utilisateur normal par défaut. Le problème est que VS ne vous demandera pas d'élever vos privilèges lorsque vous en avez besoin, vous devez donc accorder manuellement les autorisations pour accéder à ce répertoire pour vous-même. )
PotatoEngineer
5
%systemroot%\System32\inetsrv\configpour Windows 10 aussi.
bonh
248

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 est simple: démarrez votre 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".

Felipe Ardila
la source
Je cours définitivement en tant qu'administrateur. Je reçois l'invite UAC et il démarre avec succès à partir de là. Je l'ai également utilisé avec VS2010.
jjathman
13
Si vous voulez éviter la douleur de gérer votre studio visuel en tant qu'administrateur à chaque fois (quelle IMHO est une meilleure solution), vérifiez la réponse de GordonK2004.
Aidin
21
-1 de moi.Ce blog promeut l'exécution de l'IDE en tant qu'administrateur tout le temps. Cela vous amènera à 101 problèmes d'écriture de code correct qui fonctionne correctement dans les environnements à sécurité limitée que vos utilisateurs voudront / devront déployer. Il est préférable de résoudre chaque problème de sécurité lors de son développement (en testant bien chaque partie du code) et de documenter la solution requise pour les utilisateurs / installateurs que de désactiver ce Run-as-Administator juste avant de lancer un libérez et espérez que vos testeurs trouveront tous les problèmes de sécurité sur lesquels vous avez tapissé (les fissures).
Darryl Miles
5
@DarrylMiles Care pour partager un exemple concret où cela a causé un problème de sécurité?
user247702
5
C'est une réponse affreuse, vraiment dommage qu'elle ait été votée jusqu'à présent. Exécuter votre VS en tant qu'administrateur est une solution de contournement, pas une solution.
Jansky
51

Je pense que nous avons rencontré un problème similaire au travail. Pour nous, la solution était d'aller dans le Panneau de configuration -> Programmes et fonctionnalités -> Activer ou désactiver les fonctionnalités Windows ... à l'intérieur de cela, nous avons dû sélectionner Internet Information Services -> Outils de gestion Web -> Compatibilité de gestion IIS 6 -> Compatibilité de la configuration de la métabase IIS et d'IIS 6. Boîte de dialogue Fonctionnalités Windows affichant l'option de métabase IIS

Essayez-le et faites-moi savoir si cela aide!

Remarque: nous exécutons IIS 7.5 sur Windows 7 à l'aide de Visual Studio 2005 et 2010 et faisons des choses avec des services Web super-old-school (.asmx) ...

Jeff B
la source
1
J'ai essayé toutes les autres solutions (autorisations de dossier de configuration, ne pas utiliser IIS, exécuter VS en tant qu'administrateur, redémarrer IIS, etc.), mais c'était la seule solution qui fonctionnait pour moi. Merci d'avoir partagé!
Chris Knight
Merci, cela m'a aussi aidé. J'utilise VS2013 et la structure des fichiers de configuration du fichier de projet est différente de la réponse de Bruno Sena. J'étais sur le point d'arracher mes cheveux, mais je me suis souvenu que j'étais audacieux et j'ai choisi d'essayer cette solution qui était une solution rapide.
BraveNewMath
Assurez IIS Admin service- vous d'avoir démarré et définissez le type de démarrage sur Automatique au lieu de Désactivé.
Ivan Chau
1
En fonction de la restriction de votre configuration, cela peut également nécessiter des privilèges d'administrateur.
surfmuggle
34

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

hopkinsrush
la source
9
Parfait! Plus besoin de vous embêter en tant qu'administrateur. Le dossier pour Win 7 se trouve ici: C: \ Windows \ System32 \ inetsrv \ config
btomas
Cela a fonctionné pour moi aussi, Windows 8.1, IIS 7.0, VS 2012. Merci beaucoup
Balthasar
3
devrait être% systemroot% \ system32 \ inetsrv \ config
BlackICE
28

Si vous travaillez sur un projet qui ne nécessite 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 déchargé et à cliquer sur modifier, recherchez:

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

et définissez USEIIS sur false

<UseIIS>False</UseIIS>

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

Pas de logo
la source
Cela fonctionne pour moi, mais quel est le problème sous-jacent ici? Cela doit être faux sur mon bureau mais vrai sur mon ordinateur portable. Donc, si j'archive un projet dans le TFS sur mon ordinateur portable, il ne parvient pas à se charger sur mon bureau, et vice versa jusqu'à ce que je change cela.
Derek Ziemba
5
Comment cela aide-t-il à résoudre le problème de l'impossibilité d'utiliser IIS?
Jonathon Cowley-Thom
Le réglage <UseIIS>False</UseIIS>n'a pas fonctionné. Le nœud <UseIISExpress>true</UseIISExpress>était également présent. Le définir sur false n'a pas aidé. Toujours la même erreur d'accès à la métabase iis est nécessaire.
surfmuggle
la seule solution qui fonctionne dans mon cas
Nick Chan Abdullah
18

J'ai eu deux types de problèmes séparés conduisant à 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...

Les deux découlent d'un choix malheureux (imo) de MS de mettre des choses dans le répertoire Documents ou My Document, combiné à des messages d'erreur vraiment moche. Dans les deux cas ci-dessus, le problème fondamental était que le fichier de configuration IISExpress est stocké dans Mes documents et qu'il n'existait pas ou n'était pas accessible.

jmoreno
la source
Comment as-tu résolu le problème. Je pense que je suis confronté à l'un des 2 problèmes.
Tassisto
Assurez-vous que le répertoire Projets et le répertoire Mes documents se trouvent sur un lecteur de disque local. Je les ai mis tous les deux sur C: \.
jmoreno
7
Notre VPN meurt souvent et laisse HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\Personal pointer vers un partage de fichiers inexistant. Changer cela en chemin local a résolu ce problème pour moi.
Pasi Savolainen
La solution pour moi était de copier le IISExpressdossier de mon dossier Documents sur une autre machine vers ma nouvelle machine, puis les choses ont commencé à fonctionner.
twhitbeck
13

Merci à tous ceux qui ont répondu. Comme cela a été fermé pendant longtemps, je n'ai pas pu fournir beaucoup de commentaires, mais j'ai finalement résolu mon problème. J'ai essayé beaucoup de ces autres solutions et elles n'ont pas résolu mon problème, mais je suis sûr qu'elles aident lorsque la cause racine 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 soit 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.

jjathman
la source
13

Sur Windows 81, à partir d'une invite de commande d'administration, utilisez:

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

Revenez ensuite dans VS, faites un clic droit sur le projet qui a échoué, choisissez Recharger.

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

lnaie
la source
Non. Cela donnera des autorisations de lecture à la configuration IIS au pool d'applications Web qui s'exécute sous cette identité. Visual Studio ne fonctionne pas avec cette identité, donc cela n'aide pas pour cette question. De plus, pourquoi laisser le pool d'applications accéder à la configuration IIS? C'est demander des ennuis.
David Bullock
2
+1 mais plutôt que d'accorder l'accès au DefaultAppPool, j'ai donné un accès en lecture / écriture à mon utilisateur et cela a corrigé l'erreur.
David Schwartz
J'ai fait la même chose que David, sauf avec un contrôle total (F) et cela a résolu mon problème.
Bernesto
13

Naviguer vers le dossier: %systemroot%\System32\inetsrv\configprésente une boîte de dialogue de sécurité. Cliquez sur continuer et cela peut résoudre le problème. Cela a fonctionné sur deux machines Win 10 / VS 2017 / IIS distinctes.

Jesse Mwangi
la source
Cela a également fonctionné pour moi auparavant. Aujourd'hui, en l'essayant sur un nouvel ordinateur portable, je n'ai pas obtenu la boîte de dialogue de sécurité lors de la navigation vers le dossier, je ne pouvais tout simplement pas accéder au répertoire de configuration. J'ai dû cliquer avec le bouton droit et modifier les autorisations sur le dossier (ce qui nécessitait l'utilisation de mon accès administrateur local) et me donner des autorisations, puis cela a fonctionné.
CaseyR
12

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

Le problème racine é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), il 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.

sargeMonkey
la source
Nous travaillons dans une machine virtuelle, un collègue a fini par définir un dossier partagé qui a fini par utiliser le dossier "Mes documents" sur un chemin réseau. Comme cette réponse l'a indiqué, cela ne fonctionne pas sans le dossier des documents. Je vais vérifier si ce dossier est disponible en premier lieu à l'avenir pour économiser les 2 heures que nous avons passées à parcourir ces messages et ces lol.
Tony
J'ai aussi eu ce problème. Mon dossier Documents se trouvait sur un partage réseau et un problème réseau empêchait l'accès. Une fois que j'ai résolu le problème de réseau, Visual Studio a cessé de donner l'erreur de métabase IIS.
GiddyUpHorsey
7

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

  1. Projet avec clic droit
  2. Cliquez sur Modifier
  3. Supprimez 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 sur Projet> Propriétés> Web et en sélectionnant Utiliser le serveur Web IIS local (décochez Utiliser IIS Express) et en cliquant sur le bouton Créer un répertoire virtuel.
Rushby
la source
Cela ne résoudra pas le problème OP car vous ne pouvez pas ouvrir le projet pour modifier l'URL lorsque vous obtenez cette erreur.
htm11h
Je suis partiellement en désaccord avec @ htm11h. J'ai eu l'erreur de l'OP et j'ai supprimé la seule entrée ci-dessus (en dehors de VS). J'ai ensuite exécuté VS et j'ai pu au moins ouvrir les propriétés. Cela ne m'a pas permis de sauvegarder les modifications, j'ai donc dû ouvrir %systemroot%\System32\inetsrv\configune fois et continuer en tant qu'administrateur; également ouvrir %systemroot%\System32\inetsrv\config\Exportet faire de même. ( erreur d'accès impossible à la métabase iis )
secretWep
Mon commentaire était qu'il n'était pas réparable depuis VS comme vous l'avez noté. C'est bien de savoir que vous pouvez modifier directement le fichier, mais il n'était pas identifié à l'époque. La plupart cherchaient un hack reg.
htm11h
7

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 s'est écrasé, je ne sais pas pourquoi un paramètre de registre est revenu, mais c'est la SOURCE de mon problème.

  1. J'ai essayé toute la course en tant qu'administrateur
  2. Toutes les réinstallations express IIS / IIS.
  3. Divers "hacks"

Arrivé à devoir réparer le registre à nouveau.

  1. Impossible en tant qu'administrateur, même d'ouvrir regedit (besoin 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

Enregistrez simplement UnHookExec.inf et installez-le en cliquant avec le bouton droit et en sélectionnant installer. L'installation du fichier n'affichera aucune fenêtre contextuelle ni notice. http://www.tweakandtrick.com/2011/04/enable-regedit-registry-editor.html

  1. HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ User Shell Folders \ Personal pointant vers un partage de fichiers inexistant. Changer cela en chemin local a résolu ce problème pour moi. - Pasi Savolainen 14 juillet 14 à 8:41

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

Maintenant, ALL est bon et Visual Studio a ouvert une solution avec 15 projets et se connecte à IIS et ne se plaint pas de ne pas pouvoir accéder aux métadonnées iis

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

Tom Stickel
la source
6

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

Saurabh Soni
la source
4

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 sélectionnez "Exécuter en tant qu'administrateur". Vous pouvez désormais exécuter visaul studio en tant qu'administrateur. De cette façon, formel et si basique.

Ramazan Sağır
la source
3

En plus de la réponse de @nologo, j'ai également dû utiliser IIS. J'ai donc changé le

<UseIIS>True</UseIIS>

à «Faux» en premier.

  • Ouvert la solution et assuré que le projet pouvait être chargé.
  • Fermer la solution et cette instance de Visual Studio
  • Modifiez à nouveau la valeur sur "True"
  • Ouvrez la solution. Cette fois, je n'ai reçu aucune erreur / avertissement. Je pouvais également exécuter avec Ctrl + F5 ou F5 sans aucun problème pendant que mon projet était mappé sur un site Web IIS.
KSK
la source
Cela m'a aidé avec VS 2015, Win10. Conseils utiles ici, problème désagréable. Merci beaucoup.
peter_the_oak
C'est dans le web.config? Si oui, où?
Bob Horn
@BobHorn C'est dans le fichier csproj ou vbproj. Ouvrez le fichier dans un éditeur de texte.
KSK
3

Changer cette clé a fonctionné pour moi:

HKEY_CURRENT_USER \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ User Shell Folders \ Personal

L'endroit n'existait pas.

garryp
la source
J'ai dû changer la clé que vous avez mentionnée, et aussi HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\Personal . Cela était dû au chemin d'accès du profil défini sur un répertoire inexistant dans Active Directory / stratégie de groupe.
Fiddles
Un troisième coupable est HKEY_CURRENT_USER\Software\Microsoft\IISExpress, qui est un répertoire personnalisé de remplacement, et un autre coupable potentiel pour ce problème
Fiddles
2

J'ai également 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 pourrait trouver utile.

J'exécutais VS2012 et presque chaque fois que je devais faire le clic droit, exécuter en tant qu'administrateur. Je me suis fatigué de cela, alors à la place, je suis allé dans ses propriétés sur le raccourci, j'ai cliqué sur avancé, puis j'ai cliqué 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 bit de raccourci est important. J'ai procédé à la branche de mon projet et j'ai téléchargé la branche dans un nouveau dossier local. Ensuite, lorsque je l'ai ouvert à partir du raccourci, je n'ai eu aucun problème. Mais si je suis allé directement dans le dossier et que j'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 File / Open / Project Cela a fonctionné à nouveau sans 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 quelque peu extrêmes, mais c'est assez simple, donc j'aurais tendance à essayer d'abord.

J'espère que cela vous a été utile.

Francis Rodgers
la source
2

Cela ressemble à l'un de ces types de bogues "Toutes les erreurs conduisent à ce message".

Le mien était que le pool d'applications venait d'être désactivé. Je l'ai rallumé et tout a bien fonctionné.

Nathan Tregillus
la source
2

Encore une chose que vous pourriez essayer:

  • Vérifiez si vous avez des mises à jour Windows en attente.
  • Si vous le faites, veuillez redémarrer avant d'essayer autre chose.

J'ai tendance à ne jamais arrêter ma machine, donc j'en ai eu beaucoup en attente d'un redémarrage. Et cela l'a corrigé.

Thomas Eyde
la source
2

J'ai tout essayé ci-dessus. Le mérite revient à toutes les réponses ci-dessus. Après avoir essayé toutes les suggestions par elles-mêmes, je viens de rassembler cette combinaison de suggestions dans un ordre qui me semblait logique. Notez que mon dossier 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 VS pour qu'il s'exécute en tant qu'administrateur
  • Désinstaller IIS via Ajout / Suppression de programmes, fonctionnalités Windows
  • Redémarrer
  • Exécutez WinRAR ou quelque chose de similaire en tant qu'administrateur et archive C:\windows\system32\inetsrv\
  • Exécutez cmd en tant qu'administrateur et rmdir /s c:\windows\system32\inetsrv\ supprimez complètement toutes les traces de la dernière installation. Laissez l'invite cmd élevée ouverte pour plus tard.
  • Réinstallez IIS avec la compatibilité de la métabase IIS 6 (doute que cela était nécessaire)
  • Laissez le 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, comme mon dossier Documents se trouve sur un lecteur de partage, je rencontrais des problèmes avec IIS Express. Je n'utilise pas / comme IIS Express, mais Visual Studio s'en est plaint.

  • À partir de l'invite cmd élevée, a couru subst U: c:\Temp. CrééC:\Temp\Documents\ et copié le dossier IISExpress à partir de mon lecteur U.
  • CustomUserHomeClé créée HKCU\Software\Microsoft\IISExpressavecC:\Temp\Documents\IISExpress
  • Cela m'a permis d'obtenir Visual Studio pour ouvrir mes projets Web et modifier les propriétés. J'ai modifié les projets pour stocker les paramètres du serveur Web dans un fichier utilisateur et l'ai ajusté pour utiliser une URL personnalisée (je ne sais pas si cela était nécessaire)
  • Il se peut que je doive ou non exécuter la substcommande à chaque redémarrage. Ne t'en fais pas.

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

scottt732
la source
Remarque pour moi: j'ai mis à jour Windows 10 vers une version d'aperçu et il s'est à nouveau cassé. Cette fois, j'ai exécuté le 2x aspnet_regiis et la commande subst et je suis de retour dans les affaires. Oh. Et n'oubliez pas de remonter votre montre.
scottt732
2

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 seul ne fonctionne pas, essayez également ce qui suit et réessayez:

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és, j'ai pu recharger le projet.

Remarque: assurez-vous d'exécuter votre VS en tant qu'administrateur, comme mentionné dans les autres réponses.

E2rdo
la source
1

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

  • Supprimer le site d'IIS
  • Créez un nouveau site, donnez-lui un nom "new_site"
  • Sélectionnez Pool d'applications autre que le nom du site lui-même. Il ne sera donc pas gâcher avec les paramètres par défaut.
  • Gardez IP "non assigné" si vous l'exécutez à partir de la même machine
  • lui donner un port inutilisé
  • Exécutez Visual Studio en tant que «Exécuter en tant qu'administrateur» en cliquant avec le bouton droit sur le raccourci exécutable VS.
  • Vous avez terminé!

Vous n'avez pas besoin d'éteindre / réinstaller quoi que ce soit d'autre que ce que j'ai déclaré car cela fonctionne.

Faites-moi savoir si quelqu'un a eu le même problème que moi et a 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.

KMX
la source
1
  1. Créez un raccourci vers le "devenv.exe"
  2. sélectionnez l'option "Exécuter en tant qu'administrateur" pour le raccourci
  3. cliquez deux fois sur le raccourci et rouvrez votre projet
Mauricio Gracia Gutierrez
la source
1

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

JB's
la source
1

J'ai fait une réparation de Visual Studio 2015 pour résoudre ce problème. La réparation a pris beaucoup de temps, mais elle a résolu le problème tout en ne faisant pas beaucoup de ce qui précède. J'exécute Win 7 Enterprise.

Kenmeister
la source
1

Ouvrez l'invite de commande de Visual Studio et tapez la commande ci-dessous et exécutez

aspnet_regiis -ga machinename\ASPNET

Après avoir exécuté la commande ci-dessus Réinitialisez le IISet 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 invite de commande Windows é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


la source
1

Dans Visual Studio 2015: j'ai changé UseIIS dans le fichier .csproj sur false et cela a fonctionné pour moi.

<UseIIS>False</UseIIS>
Arvind Krmar
la source
0

Dans mon message, en plus de se plaindre de "Impossible d'accéder à la métabase IIS", il mentionne également que vous ne pouvez pas 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>", commentez-la. Rechargez et cela devrait fonctionner. Cela a à voir avec l'administrateur n'a pas l'autorisation d'accéder à cette adresse.

user2686690
la source
0

J'avais un problème similaire. Visual Studio ne charge aucun projet Web et affiche l'erreur: 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 était à l'origine du problème. Un clic droit sur IIS Express dans Programmes et fonctionnalités dans le panneau de configuration et le choix de réparation ont résolu le problème en moins de deux minutes.

JGa
la source
0

J'utilise Win 8 Pro et VS 2013. Après avoir tout essayé sur cette page ... J'ai simplement réinstallé IIS Express 8 et tout fonctionne bien maintenant (même sans fonctionner en tant qu'administrateur).

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

Yossi
la source