Visual Studio 2012をインストールしてソリューションを開くと、この形式で一連のエラーが発生します。
WebアプリケーションプロジェクトFooはIISを使用するように設定されています。
IISメタベースにアクセスできません。あなたのマシンのIISウェブサイトにアクセスするのに十分な特権がありません。
私たちの各Webアプリケーションについてこれを取得します。私が試したこと
これらは、この問題に対する一般的な解決策のように思われますが、私はそれらで何の成功もしていません。他にできることはありますか?
答えてくれた皆さんに感謝します。 これは長い間閉鎖されていたので、私はあまりフィードバックを提供することができませんでした、しかし私は結局私の問題を解決しました。私はこれらの他の解決策の多くを試してみました、そして、それらは私の問題を解決しませんでした、しかし私は彼らが根本的な原因が異なるとき助けると確信しています。
私の解決策
私はこの問題を解決するために、Windows 7内のIISと.Net Frameworkの機能を無効にしてから、再度有効にしました。この再インストールが私の問題を解決したようです。何が問題の原因であるかはまだわかりませんが、私のチームの少なくとも1人の開発者が同じ問題を抱えていました。
On Windows 8 Pro :
%systemroot%\inetsrv\config
On Windows 7および8.1および10
%systemroot%\System32\inetsrv\config
(%systemroot%
は通常C:\Windows
です)
Windowsエクスプローラで上の適切な場所に移動します。ポップアップでアクセスがブロックされます。
「このフォルダにアクセスできない - [続行]をクリックしてこのフォルダに恒久的にアクセスしてください。 "
このフォルダの[続行]をクリックし、その下の[エクスポート]フォルダをクリックします。ショートカットを "自分で実行"(ドメインおよびローカル管理者のメンバー)に戻し、ソリューションを開いて展開することができました。
私はあなたが管理者権限でビジュアルスタジオを運営していないと思います。あれ見て:
http://bloggingabout.net/blogs/rick/archive/2012/10/04/unable-to-access-the-iis-metabase.aspx
引用する
これを解決するのは簡単です。「管理者として実行」でVisual Studioを起動します。ショートカットを右クリックして「管理者として実行」を選択することでこれを行うことができます。
職場でも同様の問題が発生したと思います。私たちにとっての解決策は、コントロールパネル - >プログラムと機能 - > Windowsの機能の有効化と無効化を切り替えることでした。その中で、インターネットインフォメーションサービス - > Web管理ツール - > IISを選択しなければなりません。 _ 6管理の互換性 - > IISメタベースとIIS 6設定の互換性。
試してみて、それが役立つかどうかを教えてください。
注:Windows 7上でVisual Studio 2005と2010の両方を使用してIIS 7.5を実行し、スーパーオールドスクールWebサービス(.asmx)を使用しています...
私はIIS AppPoolのIDパーミッションを%systemroot%\inetsrv\config
に付与することでこの問題を解決しました
IISを使用しないプロジェクトで作業している場合、このエラーでプロジェクトを開くための回避策は、アンロードされたプロジェクトを右クリックして[編集]をクリックすることです。
<ProjectExtensions>
<VisualStudio>
<FlavorProperties GUID="">
<WebProjectProperties>
<UseIIS>True</UseIIS>
</WebProjectProperties>
</FlavorProperties>
</VisualStudio>
</ProjectExtensions>
</Project>
uSEIISをfalseに設定します
<UseIIS>False</UseIIS>
変更を保存した後、プロジェクトを右クリックして再ロードします。
私はこのエラーにつながる2つの別々のタイプの問題を抱えており、私は共有すると思っていました...
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...
これらは両方とも、物事をDocumentsまたはMy Documentディレクトリに入れるというMSによる不幸な(imo)選択から生じています。上記のどちらの場合も、根本的な問題は IISExpress設定ファイル がマイドキュメントに入っていて、存在しないかアクセスできないということでした。
私はこの問題を抱えていました - 徴候は同じですが、私が抱えていた問題は私が "My Documents"フォルダをネットワーク共有上にあるように設定し、そして共有にアクセスできないということでした。
根本的な問題は、%USERPROFILE%\ DocumentsにあるIIS configファイルにアクセスできないということでした。 「マイドキュメント」フォルダの場所を変更すると(reg値を変更した後)、再び機能し始めました。
私はこれがあなたが遭遇するかもしれない一般的なシナリオではないかもしれないことを知っています、しかしそれは同じ症状を与えるのでそれをここに投稿しました。
Windows 81では、管理コマンドプロンプトから、次のように入力します。
icacls "C:\Windows\System32\inetsrv\config" /t /grant "IIS AppPool\DefaultAppPool":(R)
その後、VSに戻り、失敗したプロジェクトを右クリックして[再読み込み]を選択します。
フォルダへのナビゲート:%systemroot%\System32\inetsrv\config
はセキュリティダイアログを表示します。続行をクリックすると問題が解決する可能性があります。これは2台の別々のWin 10/VS 2017/IISマシンで動作しました。
あなたはこの問題に遭遇し、私と同じ問題を抱えているかもしれません。私は以前にそれを "解決"してから停電とコンピュータがクラッシュした、なぜ registry 設定が元に戻ったのかわからないが、それは私の問題の _ source _ である。
再びレジストリを修正する必要があることになった。
管理者もregeditを開くことができませんでした(問題はgpedit.msc管理用テンプレートにはないため、レジストリにアクセスする必要があります)。
デスクトップ上のUnHookExec.inf
UnHookExec.infを保存して右クリックしてインストールを選択するだけでインストールできます。ファイルをインストールしてもポップアップや通知ボックスは表示されません。 http://www.tweakandtrick.com/2011/04/enable-regedit-registry-editor.html
(\\cs2data\home\stickelt\my documents
からc:\dev
に変更)
ALLが良い そしてVisual Studioは15のプロジェクトで解決策を開き、IISに接続して、iisメタデータにアクセスできないと不平を言わない
現在の仕事で誰もこの問題を抱えていなかったので、私はこれまでに遭遇したことがありませんでした(多くは久しぶりに訪れました。
私は今日これに遭遇し、プロジェクトファイルからIISUrlを削除することで問題を修正しました:
次の行を削除してください。
<IISUrl>http://localhost:xxxxx </IISUrl>
プロジェクトの再読み込み
今日この問題が発生したばかりで、VSを「管理者として実行」として開かないことがわかりました。これをした後、私はサービスを公開することができました。
管理者権限がある場合は、Visual Studioアイコン>プロパティを右クリックしてから、[管理者として実行]チェックボックスをオンにします。あなたはもう直接管理者としてvisaulスタジオを実行することができます。このように、正式でとても基本的です。
このキーを変更すると私のために働いた:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer \ユーザーシェルフォルダ\個人用
場所が存在しませんでした。
@nologoによる answer に加えて、私もIISを使用しなければなりませんでした。だから私は
<UseIIS>True</UseIIS>
最初に 'False'にします。
プロジェクトのルートディレクトリに移動して、次のファイルを見つけます。
YourProjectName.csproj.user - その中で、 UseIISExpress が false に設定されていることを確認します。
<UseIISExpress>false</UseIISExpress>
それだけではうまくいかない場合は、以下も試してもう一度試してください。
YourProjectName.csproj - メインプロジェクトファイル内で、 UseIIS と UseIISExpress の両方が false に設定されていることを確認します。
<UseIIS>True</UseIIS>
<UseIISExpress>false</UseIISExpress>
これらを変更した後、私は再びプロジェクトをロードすることができました。
注: 他の回答で説明されているように、必ず管理者としてVSを実行してください。
同様の問題もありました。私の解決策は、「管理者として実行」という回答の拡張であり、誰かが役に立つと思うかもしれません。
私はVS2012を実行しており、ほとんどの場合、管理者として右クリックを実行する必要がありました。私はこれにうんざりしたので、代わりにショートカットのプロパティに入り、[詳細設定]をクリックし、[管理者として実行]オプションをクリックしました。これで、VS2012は、それを開くたびに常に管理者として実行されますそのショートカットから。
そのショートカットビットからが重要です。プロジェクトのブランチに進み、ブランチを新しいローカルフォルダーにダウンロードしました。その後、ショートカットから開いたときに問題はありませんでした。しかし、フォルダに直接移動して、プロジェクトをローカルで実行した場合ショートカットなしでは実行されませんでした管理者として実行すると、このエラーが発生しました。
最初に通常どおりVS2012を開いてから、File/Open/Projectを使用しても問題なく動作しました。 (管理者として実行していたため)。しかし、Windowsファイルマネージャーを使用してソリューションを開いたとき、管理者として実行していませんでした。
他の提案はいくぶん極端に見えますが、これは非常に単純なので、まず試してみる傾向があります。
これがお役に立てば幸いです。
これは「すべてのエラーがこのメッセージにつながる」タイプのバグの1つのようです。
私の考えでは、App Poolがオフになったばかりです。私はそれを再びオンにし、そしてすべてがうまくいった。
私は上のすべてを試しました。クレジットは上記のすべての応答に行きます。すべての提案を独自に試したので、私はこの提案の組み合わせを意味のある順序でまとめました。私のDocumentsフォルダは共有ドライブにあります。 subst/IISExpressのものは、同じボートに乗っていない限り適用できません。
C:\windows\system32\inetsrv\
をアーカイブします。rmdir /s c:\windows\system32\inetsrv\
としてcmdを実行します。後でcmdプロンプトを開いたままにします。C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -ga MYDOMAIN\scottt732
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
また、私のDocumentsフォルダは共有ドライブにあるので、私はIIS Expressの問題を抱えていました。/[IIS Expressは使用しませんが、Visual Studioはそれについて不満を述べました。
subst U: c:\Temp
を実行しました。 C:\Temp\Documents\
を作成し、私のUドライブからIISExpressフォルダをコピーしました。HKCU\Software\Microsoft\IISExpress
内にC:\Temp\Documents\IISExpress
内にCustomUserHome
キーを作成しましたsubst
コマンドを実行する必要があるかもしれません。気にしないでください。そしてタオルを3回投げ込んで約6時間かけた後、私はVisual Studio(2015 Update 2)でWebプロジェクトを開くことができます。
あなたが試すことができるもう一つのこと:
私は自分のマシンを絶対にシャットダウンしない傾向があるので、再起動を待つ人はたくさんいました。そしてそれはそれを修正しました。
これを解決するために、Visual Studio 2015を修復しました。修復には長い時間がかかりましたが、それは問題を解決しましたが、上記の多くを実行することは解決しませんでした。私はWin 7エンタープライズを運営しています。
Visual Studioのコマンドを開き、コマンドを入力して実行します
aspnet_regiis -ga machinename\ASPNET
上記のコマンドを実行した後でIIS
をリセットし、問題を解決するアプリケーションをテストしてください。
上記のコマンドで問題が解決しない場合は、visual studio command Prompt:-
の下のコマンドを実行してみてください。
aspnet_regiis -i
あるいは、Windowsのコマンドプロンプトから上記のコマンドを実行することもできます。
[スタート]メニューに移動して[ファイル名を指定して実行]を開き、OK
を入力してクリックします。
%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe –I
その後、IISをリセットし、問題を解決するアプリケーションをテストします。
今日も私と同じ問題がありました。そして私はそれが厄介だと思った。私は同じIISからすでに開発中の他の2つのWebサイトを持っていますが、それでも新しいサイトを作成することができませんでした。奇妙な、しかし私はこれをしました。
それが機能するので、あなたは私が述べたもの以外の何かを消す/再インストールする必要はありません。
誰かが私と同じ問題を抱えていて同じ方法で解決したかどうかを私に知らせてください。私はそれが問題ではなく、Visual Studioが開くことを拒否したlocalhost上にWebサイトを作成する間違った方法であったと思います。
これが初心者に役立つことを願っています。
私は同じ問題を抱えていました。私にとっては、前回のWindowsインストールと同じ自分のドキュメントを使用していたということです。私の文書からIISExpressフォルダを削除するだけでうまくいきました。
IIS Expressユーザー - ネットワーク共有でのマイドキュメントの使用
IIS Express application.config
がネットワークドライブにある場合は、ドライブがマップされ、マイコンピュータに接続されていることを確認してください。
私はこの問題に直面していました、そして私がマイコンピュータのネットワークドライブを再マッピングしたとき問題は解決されました。
コマンドを実行します。
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
私の場合、唯一助けになったのは再インストールすることです(または修復が簡単です)IIS 10.0 Express
私は同様の問題を抱えていました。 Visual StudioはWebプロジェクトをロードせず、エラーを表示しました。仮想ディレクトリ<myproj:myport>の作成に失敗しました。 IISメタベースにアクセスできません。
私の場合、実際にはIISExpressが問題の根本にありました。コントロールパネルの[プログラムと機能]でIIS Expressを右クリックして[修復]を選択すると、2分以内で問題が解決しました。
この問題を解決するには、Windowsの機能リストのIISツールを実際にオフにします。次に、Visual Studio 2013インストールを修復し、Web Developerがチェックされていることを確認してください。 VSがうまく動作するようにIIS 8をインストールします。
私はWin 8 ProとVS 2013を使用しています。このページですべてを試してみた後、私はIIS Express 8を再インストールしました。
私の結論は、これはかなり一般的なエラーであり、複数の根本的な原因があるということです。
私はこれをWindows 10 Professional 64ビットマシンで経験しましたが、ここに掲載されている他の答えはどれも役に立ちませんでした。それは私が死のブルースクリーンを経験した後に起こり始めました、そして私はUACがそれ自身のスイッチを入れたことを発見しました。管理者としてVisual Studioを実行するだけでは解決できませんでした。私のソース管理はネットワークドライブ上にあり、Visual StudioはUACをオンにしてアクセスできませんでした。
GPEDITでUACを元に戻すと、問題が解決しました。
私のメッセージでは、「IISメタベースにアクセスできない」という苦情の他に、"<IISUrl>http://localhost:6416/</IISUrl>"
にアクセスできないという言及もありました。アンロードプロジェクトを右クリックして[編集]をクリックし、"<IISUrl>http://localhost:6416/</IISUrl>"
という行を見つけてコメントアウトします。リロードするとうまくいきます。これは管理者がそのアドレスにアクセスする許可を持っていないことと関係があります。