SpecialFolder.ApplicationData返回默认用户

时间:2010-01-07 17:57:50

标签: c# .net

我正在尝试获取当前登录用户的应用程序数据文件夹的路径。

我正在使用

Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData)

但返回的路径是:

  

C:\ Documents and Settings \ Default User \ Application Data

我希望登录用户不是默认用户。

我期待的道路是:

  

C:\ Documents and Settings \ jbezanson \ Application Data

这是我读过的所有网站说我应该使用该代码的路径。

jbezanson是我登录的用户。

我通过瘦客户端和终端服务登录服务器。我的应用程序正在服务器上运行。这可能是问题吗?

3 个答案:

答案 0 :(得分:2)

我认为问题应该是因为正在执行服务器的用户(然后是你的应用程序)。服务器可能正在使用网络服务或本地服务帐户运行,并且这些帐户没有应用程序数据文件夹。

希望这有帮助。

答案 1 :(得分:1)

环境类是指应用程序正在执行的环境。没有更具体的信息,很难说清楚。但是,如果您正在登录终端服务;然后执行瘦客户端;然后连接到另一台机器(甚至同一台机器)上的服务,然后我认为服务应用程序很可能作为另一个用户运行(在这种情况下是默认用户)。

答案 2 :(得分:0)

jbezanson是否有FileIOPermissionAccess。PathDiscovery设置了应用运行的位置?