c++ - 如何远程检索 Windows 配置文件目录路径?

标签 c++ windows api profiles

我正在尝试跨各种 Windows 版本检索配置文件目录的路径。在旧版本中可能是 [drive]:\Documents and Settings,在新版本中可能是 [drive]:\Users。有多种方法可以在本地毫无问题地执行此操作,但是我需要在已连接的远程计算机上找到路径。

  • 已启用远程注册表。
  • 我有一个模拟 token ,可以通过 Net API 等成功地从远程主机收集信息。
  • 我可以访问管理共享,因此可以访问远程驱动器上的所有文件。

这是其他重要注意事项的列表。

  • 这是一个 C++ 项目。
  • GetProfilesDirectory 或 GetUserProfileDirectory 似乎不可能在远程上下文中运行。如果我对此有误,请告诉我,但在我所有的实验中,该函数都从本地机器返回了一些东西。
  • 我不会使用 WMI,我们多次尝试将 WMI 功能集成到我们的项目中,但都没有成功。
  • 我希望尽可能少地进行“屏幕抓取”。如果您有一个不涉及从某些文本文件读取和解析结果的想法,我很乐意听取您的意见。但我真的很感激任何有用的答案。
  • 注册表中的配置文件目录信息似乎没有用,因为它包含环境变量,并且像 GetProfilesDirectory 一样,环境变量扩展功能似乎不是为远程主机工作而设计的。这意味着,如果我从较新的 Windows 机器向较旧的 Windows 机器发出调用,反之亦然,则该解决方案将不起作用。
  • 该解决方案应该足够通用,可以在可能运行从 Windows Server 2003 到 Windows 7 的任何版本的 Windows 的主机之间工作。

提前感谢您提出的任何想法。理想情况下,我只是希望能够强制 GetProfilesDirectory 在远程主机上运行,​​所以如果您知道如何做到这一点,我将永远爱您。

最佳答案

如果您有权访问远程注册表,您应该能够查看保存配置文件目录和配置文件列表的键:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList

关于c++ - 如何远程检索 Windows 配置文件目录路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9628373/

相关文章:

c++ - 潜在 throw 函数是否信号安全?

即使是静态链接的 C++ 请求 MSVCP110D.dll

api - 为什么我们甚至需要通过 HTTPS 刷新 token ?

c++ - 这是什么=!运算符(operator)?

c++ - #define 语句中的预期标识符

c++ - Windows 上的 TLS session 恢复

javascript - Youtube API v3 按位置搜索视频

python - 检索 flickr 收藏夹

c++ - 是否可以在 C++ 中传递一个将参数传入集合的构造函数?

windows - 用IE7测试网站