如题:
我的做法://得到局域网内所有计算机名
LPVOID Buffer = new char[2048];
WNetEnumResource( hEnum, &Count, Buffer, &BufferSize);
NetResource = (NETRESOURCE *)Buffer;int nSize = BufferSize / sizeof(NETRESOURCE);CSocket sockClient;
sockClient.Create();
//循环检测
for (int i = 0; i < nSize; i ++, NetResource ++)
{
    if (NetResource->dwUsage == RESOURCEUSAGE_CONTAINER 
        && NetResource->dwType == RESOURCETYPE_ANY)
    {
        if (NetResource->lpRemoteName)
        {
            strFullName = NetResource->lpRemoteName;            ****
            //得到IP地址
            ....
            //检测
            sockClient.Connect(strIP, SOCK_PORT);
            //判断是否连通
            ****        }
    }
}sockClient.ShutDown(2);
sockClient.Close();
〉〉〉〉〉
这样的话速度比较慢,我这里大概20台电脑,全部检测完大概需要30~45秒,如何快速实现,谢谢!