它的功能就像“网上邻居”一样,或者说像QQ那样的聊天工具,可以列出域中的所有计算机。

解决方案 »

  1.   

    Network Enumerations(枚舉網絡)不確定中文翻譯﹐不過search 一下應有收穫。
    我只有英文資料﹐如果需要give me ur email.
      

  2.   

    BOOL WINAPI EnumerateFunc(HWND hwnd, 
                              HDC hdc, 
                              LPNETRESOURCE lpnr) 

        DWORD dwResult, dwResultEnum; 
        HANDLE hEnum; 
        DWORD cbBuffer = 16384;      // 16K is a good size 
        DWORD cEntries = 0xFFFFFFFF; // enumerate all possible entries 
        LPNETRESOURCE lpnrLocal;     // pointer to enumerated structures 
        DWORD i; 
     
        dwResult = WNetOpenEnum(RESOURCE_GLOBALNET, 
            RESOURCETYPE_ANY, 
            0,                 // enumerate all resources 
            lpnr,              // NULL first time this function is called 
            &hEnum);           // handle to resource 
     
        if (dwResult != NO_ERROR) { 
     
            // An application-defined error handler is demonstrated in the 
            // section titled "Retrieving Network Errors."         NetErrorHandler(hwnd, dwResult, (LPSTR)"WNetOpenEnum"); 
            return FALSE; 
        } 
     
        do { 
     
            // Allocate memory for NETRESOURCE structures.
     
            lpnrLocal = (LPNETRESOURCE) GlobalAlloc(GPTR, cbBuffer); 
     
            dwResultEnum = WNetEnumResource(hEnum, // resource handle 
                &cEntries,               // defined locally as 0xFFFFFFFF 
                lpnrLocal,               // LPNETRESOURCE 
                &cbBuffer);              // buffer size 
     
            if (dwResultEnum == NO_ERROR) { 
                for(i = 0; i < cEntries; i++) 
                { 
                    // Following is an application-defined function for 
                    // displaying contents of NETRESOURCE structures. 
     
                    DisplayStruct(hdc, &lpnrLocal[i]); 
     
                    // 
                    // If this NETRESOURCE is a container, call the function 
                    // recursively.                 if(RESOURCEUSAGE_CONTAINER == 
                            (lpnrLocal[i].dwUsage & RESOURCEUSAGE_CONTAINER)) 
                        if(!EnumerateFunc(hwnd, hdc, &lpnrLocal[i])) 
                            TextOut(hdc, 10, 10, 
                                "EnumerateFunc returned FALSE.", 29); 
     
                } 
            } 
     
            else if (dwResultEnum != ERROR_NO_MORE_ITEMS) { 
                NetErrorHandler(hwnd, dwResultEnum, (LPSTR)"WNetEnumResource"); 
                break; 
            } 
        } 
        while(dwResultEnum != ERROR_NO_MORE_ITEMS); 
     
        GlobalFree((HGLOBAL) lpnrLocal); 
     
        dwResult = WNetCloseEnum(hEnum); 
     
        if(dwResult != NO_ERROR) { 
            NetErrorHandler(hwnd, dwResult, (LPSTR)"WNetCloseEnum"); 
            return FALSE; 
        } 
     
        return TRUE; 

      

  3.   

    你的等级太低,不能给分超过100分。可以使用enum技术来查找域中的计算机。
      

  4.   

    http://vip.6to23.com/NowCan1/tech/nethood.htm
    这是一个另类的,可惜是BCB写的。