获取当前登录用户的Documents文件夹路径

Dar*_*tel 8 c# windows winforms

我正在开发一个C#WinForms应用程序.如果服务器上有可用的更新,则此应用程序可以更新.它工作正常,但仅适用于管理员用户.

如果用户没有管理员权限,应用程序将使用以下步骤检查并应用更新:

  • 当普通用户按下"检查更新"按钮时,应用程序将检查服务器上是否有可用的更新.
  • 如果有可用的更新,应用程序将确认将更新应用于消息框.
  • 如果用户按"是"进行应用更新,则会提示使用Windows默认管理员权限框.
  • 如果当前用户具有管理员用户的用户名和密码,则他们输入该用户并应用更新.

问题

应用更新后(仅适用于普通用户)应用程序以管理员用户身份运行,我正在尝试获取当前用户的Documents文件夹路径.它给了我admin用户的Documents文件夹路径,因为应用程序当前正以admin用户身份运行,但我想要当前登录用户的Documents文件夹路径.

如果应用程序以管理员用户身份运行,如何获取当前登录用户的Documents文件夹?

目前我使用下面的代码获取文档文件夹路径.

Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
Run Code Online (Sandbox Code Playgroud)

小智 17

如何在更改为Admin之前保存用户文档路径并在以后使用它...

Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
Run Code Online (Sandbox Code Playgroud)