Asp.net

無法訪問 IIS 元數據庫 ASP.Net

  • June 25, 2018

嗨,我知道這有一些執行緒,但似乎沒有一個解決方案對我有用。

我有一個 ASP.Net 網站項目,我試圖在 Visual Studio 中載入和發布。但是,當我載入項目時,出現錯誤:

創建虛擬目錄http://localhost:xxxx失敗並出現錯誤:無法訪問 IIS 元數據庫。您沒有足夠的權限訪問您機器上的 IIS 網站。

僅當我以管理員身份執行 Visual Studio 時才會出現此錯誤。如果我不以管理員身份執行,則不會發生上述錯誤,但是當我嘗試發布我的應用程序時,我得到:

請在管理員模式下啟動 Visual Studio 以執行此部署操作

看來我贏不了了!


到目前為止我已經嘗試過:

  • 取得C:/Windows/System32/Inetsrv/Config的所有權
  • <UseIISExpress>false</UseIISExpress>在我的 project_name.csproj 文件中設置
  • 回到在管理員模式下沒有問題的舊團隊基礎伺服器簽入並使用該配置。
  • 以非管理員身份執行 Visual Studio(有效,但請注意上面的第二個錯誤)

到目前為止,沒有人有任何運氣。


額外資訊:

作業系統:Windows 8.1(64 位)

視覺工作室:2013

IIS:8.5

C:\Windows\System32\inetsrv\config 上的權限(只讀):

  1. 我:完全控制
  2. 管理員:完全控制

Documents/IISExpress/config 的權限(只讀):

  1. 我:完全控制
  2. 管理員:完全控制

注意“文件”位於網路驅動器上

事實證明,我的個人文件夾被設置為網路驅動器,該驅動器偶爾會出現故障,從而導致所描述的錯誤。

要更改您的個人文件夾:

  • 打開C://Windows/regedit.exe
  • 導航HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders
  • 將欄位更改Personal%USERPROFILE%%USERPROFILE%\{a folder of your choice}

這解決了我的問題。

請注意,您可能需要將舊個人文件夾中的任何文件移至新文件夾,因為它們不會再被拾取

引用自:https://stackoverflow.com/questions/28459396