à l'aide de windows nom d'utilisateur mot de passe en C#
comment je peux l'utiliser windows stockées nom d'utilisateur et mot de passe dans mon APPLICATION en C#. Je suis à la recherche de méthode qui renvoie la valeur booléenne de l'état de la connexion réussie. moyens :
bool isCredentialValid = CheckLogin(username, password);
donc, selon bool valeur que je peux afficher des message.
Mis à jour
class Program
{
static void Main(string[] args)
{
PrincipalContext pc = new PrincipalContext(ContextType.Machine);
Console.WriteLine("Enter username : ");
string user = Console.ReadLine();
Console.WriteLine("Enter password : ");
string pass = Console.ReadLine();
bool isValid = pc.ValidateCredentials(user, pass);
Console.WriteLine("State : {0}",isValid);
Console.ReadLine();
}
}
ce code ne fonctionne pas. quand j'active compte Invité il montre vrai pour chaque connexion et quand je désactive compte Invité il ne vérifie même compte existant. Toute aide serait appréciée.
- u veux dire avec windows login et mot de passe
- Êtes-vous sûr que le compte que vous utilisez pour tester c'est un compte d'ordinateur? Si j'ai essayer le code que vous fournissez il valide avec succès. Lorsque j'essaie de me connecter avec un compte désactivé une exception est levée.
- je suis en utilisant le même nom d'utilisateur et le mot de passe que j'utilise pour la connexion, son travail dans windows 7 le pc, mais pas dans XP
- Je suis en cours d'exécution sur Windows XP SP3 et il fonctionne ok. J'ai d'abord essayé sur mon dev PC (à l'aide de VS2008 sur XPSP3) qui était très bien. Maintenant, j'ai aussi construit une version et a couru que sur un autre XPSP3 machine qui aussi couru ok. J'ai exécuté le fichier exe en tant qu'Administrateur et un utilisateur normal, dans les deux cas, il a très bien fonctionné.
Vous devez vous connecter pour publier un commentaire.
Ont un coup d'oeil à PrincipalContext.ValidateCredentials méthode. Par exemple,
pour les comptes locaux, l'utilisation ContextType.Machine.
Encore un autre moyen serait d'utiliser l'api win32 LogonUser fonction
Ajouter
using System.Security.Principal;
Alors u peut utiliser ce nom d'utilisateur pour l'authentification.
Pour le mot de passe, c'est différent.