从 Vista 工作站,我有一台附加的 XP Embedded 计算机,我想在其上以编程方式在本地安装一个卷(例如,将 XP Embedded\\MyXPEmbedded\C:\some\path\
安装到 Vista 工作站(安装到C:\mounted_XPEmbedded\
)。
(这是一个在 Vista 工作站上运行的管理实用程序,用于维护 XP Embedded 工作站上的文件,该工作站是较大设备的一部分。)
我可以从 Vista 工作站看到XP Embedded 计算机。例如,我可以::getnameinfo()
通过 IP 地址解析 XP Embedded 计算机的名称。
但是,所有调用GetVolumeNameForVolumeMountPoint()
失败(返回false
),格式化消息来自::GetLastError()
:
Logon failure: unknown user name or bad password
很明显,这似乎是一个权限问题。但是,我在 Microsoft API 中看不到如何通过这些卷 GUID 路径 API 提供用户/密码的讨论。
当通过在地址栏中输入 XP Embedded 机器的 IP 地址从 Vista 工作站上的 Windows 资源管理器“浏览”XP Embedded 时,系统提示我输入用户名和密码,之后我可以看到 XP Embedded 上的所有内容(呃! 我如何以编程方式提供它?)
问题:在使用 GUID 路径 API(特别是)时,如何以编程方式提供用户登录名/密码::GetVolumeNameForVolumeMountPoint()
?
部分问题可能是这些计算机不共享同一个域(它们不能,Vista 计算机将被添加到客户的域中,XP Embedded 必须是“隐藏的”)。
其他信息,可能并不重要:
- Vista 工作站和 XP Embedded 不共享同一个域(它们不能)
- 应用程序在具有管理权限的帐户下在 Vista 工作站上运行(我认为这是必需的?)
- XP Embedded 计算机上不存在该 Vista 管理帐户(XP Embedded 具有不同的管理帐户)
- 两台计算机之间的时钟是最新的(安全凭证应该可以工作)
- Vista工作站有两张网卡,一张网卡直接连接XP Embedded box,只有一张网卡
- 使用 C++、MSVS2008
奖励问题:如果我可以在没有管理权限的情况下在 Vista 工作站上运行这个管理实用程序,那就太好了,这可能吗?(我知道嵌入式 XP 的管理登录名/密码。)