Énumérer les Fenêtres membres du groupe d'utilisateurs sur un système distant à l'aide de c#

Dans c#, j'ai besoin d'être en mesure de

  • Connecter à un système distant, en précisant le nom d'utilisateur/mot de passe approprié
  • Liste des membres d'une localgroup sur ce système
  • Aller chercher les résultats à l'exécution de l'ordinateur

Ainsi, par exemple, je voudrais connecter à \SOMESYSTEM appropriés creds, et de récupérer une liste des administrateurs locaux, y compris SOMESYSTEM\Administrateur, SOMESYSTEM\Bob, DOMAINE\AlanH, "DOMAINE\Administrateurs de Domaine".

J'ai essayé ce système.directoryservices.accountmanagement mais je suis en cours d'exécution dans les problèmes d'authentification. J'ai parfois l':

Plusieurs connexions à un serveur ou à une ressource partagée par le même utilisateur, en utilisant plus d'un nom d'utilisateur, ne sont pas autorisés. Débranchez toutes les connexions précédentes au serveur ou à une ressource partagée et essayez de nouveau. (Exception de HRESULT: 0x800704C3)

Ci-dessus est d'essayer, car il y aura des situations où j'ai simplement ne peut pas annuler le mappage des lecteurs existants ou les connexions UNC.

D'autres fois mon programme obtient une ERREUR INCONNUE et le journal de sécurité sur le système distant signale une erreur 675, code 0x19 qui est KDC_ERR_PREAUTH_REQUIRED.

J'ai besoin d'un moyen plus simple et moins sujette aux erreurs de chemin à faire!

avez-vous la solution ? En fait, quand vous appelez GroupDirectoryentry.Invoke("Membres"), il ne libère pas de connexion à la machine à distance de l'événement si nous disposons GroupDirectoryentry objet.Même problème se produit avec UserDirectoryentry.Invoke("Groupes").

OriginalL'auteur quux | 2008-08-22