2016-12-24 34 views
2

我無法啓動Azure存儲模擬器。我正在運行v4.6。如何在非管理員帳戶下啓動Azure存儲模擬器

我的開發機器上有兩個帳戶,管理員帳戶(我不使用)和我的帳​​戶gregv。我在gregv賬戶下進行所有的開發工作。

這意味着管理員帳戶無權訪問SqlLocalDB。我已通過登錄管理員帳戶並啓動SMSS並嘗試附加到(localdb)\ v11.0來測試此操作。我以gregv身份登錄時可以連接,但以管理員身份登錄時無法連接。

我認爲Azure存儲模擬器試圖設置自己,就好像管理員帳戶是正在運行的帳戶一樣。我認爲這是因爲它是在c:\ Users \ Administrator下創建不在c:\ Users \ gregv下的mdf數據庫文件,即使以gregv登錄時安裝它也是如此。

當我嘗試運行模擬器,它掛起了一會兒,然後終於給了我這個錯誤:

C:\Program Files (x86)\Microsoft SDKs\Azure\Storage Emulator>AzureStorageEmulator.exe start 
Windows Azure Storage Emulator 4.6.0.0 command line tool 

Unhandled Exception: System.TimeoutException: Unable to open wait handle. 
    at Microsoft.WindowsAzure.Storage.Emulator.Controller.EmulatorProcessController.InternalWaitForStorageEmulator(Int32 timeoutInMilliseconds) 
    at Microsoft.WindowsAzure.Storage.Emulator.Controller.EmulatorProcessController.EnsureRunning(Int32 timeoutInMilliseconds) 
    at Microsoft.WindowsAzure.Storage.Emulator.Commands.StartCommand.RunCommand() 
    at Microsoft.WindowsAzure.Storage.Emulator.Program.Main(String[] args) 

我如何能得到這個運行在用戶gregv有什麼建議?或者我應該放棄gregv帳戶並轉而以管理員身份完成所有的開發工作?

更新:我以用戶gregv共享v11.0實例,現在我可以使用SSMS連接到lcoaldb數據庫,當我以管理員身份登錄時。當我現在以管理員身份登錄時,我也可以成功啓動模擬器。

但是,當我註銷Administrator帳戶並以gregv身份登錄時,我無法啓動模擬器。我真的想在我的非管理員帳戶下開展我的開發工作,這意味着我必須從該帳戶訪問模擬器。

+0

我認爲這個問題可能與gregv帳戶對c:\ Users \ Administrator具有讀寫權限有關。我認爲這可能會讓模擬器中的檢測邏輯搞亂數據庫文件的放置位置。 –

+0

不,那不是。我刪除了gregv的權限來讀取管理員文件夾,但它仍將mdf文件放入Administrator文件夾中,然後無法啓動。 –

+0

其中的邏輯,把文件放入目錄,你不需要讀取權限... – 4c74356b41

回答

0

按照@Jambor和@Michael Roberson的建議,訣竅是在我啓動的命令行界面上以管理員身份運行以運行azure存儲命令。

一旦我做了一次,能夠從我的正常帳戶使用azure存儲模擬器。

+0

我正在重新訪問,因爲我今天不得不重新啓動我的開發機器,並且我無法讓Azure存儲模擬器再次啓動,而無需從啓用管理的命令提示符運行它。我發現期望是你只需要做一次管理員的初始化,但我的經驗是,你必須始終以管理員身份啓動它。 –

相關問題