Mit NetUserEnum alle Heimatverzeichnisse besorgen funktioniert nicht...



  • Ich hab versucht mit folgendem Code die Heimatverzeichnisse aller Benutzer zu bekommen. Nur funktioniert das nicht wirklich.
    Ich bekomme zwar die Benutzernamen aber die usri*_home_dir ist immer ein leerer String. (Laut Debugger)

    Code:

    vector<wstring> GetHomeDirectories()
    {
        vector<wstring> pathlist;
    
        LPUSER_INFO_1 info_buf = 0;
        DWORD total_entries    = 0;
        DWORD entries_read     = 0;    
        NET_API_STATUS status  = 0;
    
        do 
        {
            status =  NetUserEnum(0,1,FILTER_NORMAL_ACCOUNT,(LPBYTE*)&info_buf,MAX_PREFERRED_LENGTH,&entries_read,&total_entries,0);
    
            if(status == NERR_Success || status == ERROR_MORE_DATA)
            {
    
                if(info_buf)
                {
                    LPUSER_INFO_1 info = info_buf;
                    for(DWORD i = 0; i < entries_read;++i)
                    {
                        if(info)
                        {
                            if(info->usri1_home_dir)
                            {
                                if(PathFileExists(info->usri1_home_dir))
                                    pathlist.push_back(info->usri1_home_dir);
                            }
    
                            ++info;
                        }
                    }
    
                }
    
            }
    
            if (info_buf)
            {
                NetApiBufferFree(info_buf);
                info_buf = 0;
            }
    
        } while(status == ERROR_MORE_DATA);
    
        if(info_buf)
            NetApiBufferFree(info_buf);   
    
        return pathlist;
    }
    

    Gibt es da vielleicht einen anderen Weg an alle Verzeichnisse zu kommen?

    Da das ganze soll für alle Windowsversionen (incl aller sprachversionen) ab 2000 funktionieren (falls es da was anderes gibt)

    Oder habe ich da vielleicht was vergessen? Oder falsch gemacht?

    Thx im voraus



  • *push*


Anmelden zum Antworten