如何在C ++中找到映射网络驱动器的IP地址?

时间:2010-08-20 14:15:20

标签: c++ windows ip-address mapped-drive

我有一个可用于默认输入数据目录的路径列表(X:\ Data; Y:\ Data; Z:\ Data)。所有可能的路径都是映射的网络驱动器。我可以使用GetDriveType(pathStr) == DRIVE_REMOTE进行检查。为了确定最好的一个,我通过仅选择存在的路径来缩小列表范围。有时候列表中会留下不止一条路径,所以为了确定那时最好的路径,我想找到驱动器映射到的服务器的IP地址,这样我就可以将它与我自己的IP地址进行比较。例如,如果我将X:\映射到\\RemoteComputer\ShareName,如何从字符串X:\Data中找到RemoteComputer的名称或IP地址? (我已经能够从计算机名中找到IP地址)。

2 个答案:

答案 0 :(得分:3)

WNetGetUniversalName是一种可能性。

答案 1 :(得分:0)

请记住,不是所有(但绝大多数)UNC路径都以计算机名称开头。有些像WebDav,是FQDN - 其他像TS remoting(即\ tsclient \ c)根本不是机器,只是RDBSS识别的一个标记。