摘要:幾個不同的用戶將在特定的機器上使用我的應用程序。我希望應用程序將其數據存儲在本機上的單個公共文件中,而不管哪個用戶正在運行該應用程序。使用'ApplicationData'或'LocalApplicationData'存儲所有用戶共有的文件?
爲了達到我想要的,我想知道這個問題是否可能是相關的:Difference between 'SpecialFolder.LocalApplicationData' and 'SpecialFolder.ApplicationData'?
從這個問題和它的答案似乎是:
Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData)
特定到機器。我通過谷歌搜索發現的一些信息證實了這一點。但是,我也發現信息說,LocalApplicationData
是用戶特定。
那麼,這是真的嗎?誰能告訴我什麼是「用戶特定」和「機器特定」的真正含義?
下面是我的想法:如果LocalApplicationData
是機器特定的,那麼我可以使用它作爲讓我的應用程序將所有數據保存到所有用戶的單個公用文件的基礎。
我也想知道關於ApplicationData
文件夾:
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)
我應該改用ApplicationData
得到我想要的東西?
如有疑問[閱讀文檔(http://msdn.microsoft.com/en-us/library/system.environment.specialfolder。 aspx)。CommonApplicationData。 – 2013-03-12 15:51:56
@RaymondChen爲什麼不是這個答案,因爲它是答案? – pixelbadger 2013-03-12 15:59:19
可能因爲它不是答案,c:\ programdata不可寫。 Windows的默認安裝不提供所有用戶都可以寫入的文件夾。如果這很重要,那麼你需要創建一個,並給每個人寫訪問權限。之後,你可能會發現,處理一個用戶搞砸另一個用戶的數據而沒有備份可能是一件非常頭疼的事情。這就是文件服務器存在的原因。 – 2013-03-12 17:29:56