写入用户AppData目录的问题

时间:2011-08-12 03:13:15

标签: windows-7 uac appdata

我的应用程序写入HKEY_LOCAL_MACHINE中的注册表,因此我使用清单文件来利用UAC功能。虽然当我向用户AppData文件夹写入数据时(出现UAC对话框提示后),数据会写入管理员的AppData文件夹,而不是当前用户的AppData文件夹。如果我想将数据写入正确的路径,我该怎么做?

1 个答案:

答案 0 :(得分:0)

是否在Administrators组中启动应用程序的当前用户?您也可以通过UAC提示的外观找到它:如果用户在Administrators组中,则对话框是一个简单的确认:是或否;如果用户不在Administrators组中,则对话框会提示输入管理员凭据:用户名和密码。 (Screen shots of Consent UI and Credentials UI)。

  1. 管理员组中的用户 然后单击“是”按钮后,应用程序将在同一用户的上下文中启动,但启用了完全管理员令牌。
  2. 管理员组中的用户不是 after用户键入管理员帐户名和密码,应用程序在另一个用户的上下文中启动。因此,所有特定于用户的设置都将写入该管理员用户的注册表和AppData,而不是最初启动该应用程序的用户。
  3. 因此,如果您要将全局设置写入HKLM并将本地设置写入当前用户的配置文件,则您只运行了提升写入HKLM的部分。