begin process at 2012 02 10 13:39:46
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Système

 > 

Autre

 > 

login & mot de passe windows : gina.dll


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

login & mot de passe windows : gina.dll

lundi 11 décembre 2006 à 12:01:39 | login & mot de passe windows : gina.dll

nicolaslepot

Bonjour,

J'ai créé une application (en c# elle est terminée) et pour lui offrir une bonne intégration, je dois faire un module SSO pour que l'utilisateur soit authentifié automatiquement sur l'application une fois qu'il s'est authentifié sur son pc. Ceci peut se faire en ajoutant une gina.dll. J'ai trouvé un bon exemple ici : http://www.codeproject.com/useritems/GINA_SPY.asp. Mais j'ai qqes soucis.

Le code a été compilé avec Visual Studio 6. Moi lorsque j'ouvre le source avec Visual Studio 8, il convertit le code au démarrage et à la compilation il me dit que le code est obsolète. Pq me dit t'il que le projet est obsolète ? Des appels a de trop vieille fonction peut-être ?

L'exemple précédent récupère login et mot de passe de winlogon.exe et les écrits dans un fichier texte sur le C:\. Cependant, il tronque à 4  caractères le login et le mot de passe. Ceci se fait dans le bout de code suivant. Je crois que c'est son "sizeof" qui retourne la taille en mémoire du pointeur et non pas la longueur de la chaine. il n'y aurait pas un bon vieux strlen() en cpp ?

        char userName[100];
        ZeroMemory(userName,100);
        char userPass[100];
        ZeroMemory(userPass,100);
        wcstombs(userName,pMprNotifyInfo->pszUserName,sizeof(pMprNotifyInfo->pszUserName));
        wcstombs(userPass,pMprNotifyInfo->pszPassword,sizeof(pMprNotifyInfo->pszPassword));
        WriteLog("NAME = %s  PASSWORD = %s ", userName,userPass);

J'aimerai repartir à zéro et simplement re-créer une DLL, lorsque je crée un DLL MFC via nouveau projet, il me propose de choisir entre:
DLL normale utilisant une DLL MFC partagée, DLL normale liée statiquement aux MFC, DLL d'extension MFC. Il me semble que dans mon cas c'est une DLL normale liée statiquement aux MFC que je dois choisir. Est-ce juste ?

Lorsque je pratique de la sorte, le compilateur me fait une erreur "error LNK2005:_DllMain@12 déjà définie dans lpgina.dll'...
En effet, j'ai recopié une fonction "DllMain" dans mon nouveau project.
DllMain c'était l'ancienne façon définir le constructeur de la dll ?

J'ai fait du c/cpp sous unix en son temps, du C# encore assez souvent mais avec le cpp sous windows je suis un peu perdu là :-/

Merci d'avance à tout qui pourra m'éclairer un peu...

nico


lundi 11 décembre 2006 à 21:51:36 | Re : login & mot de passe windows : gina.dll

BruNews

Administrateur CodeS-SourceS
DLL normale utilisant une DLL MFC partagée
ok mais gaffe que avec VS8 et superieur il te faudra un setup, la version MFC utilisée sera superieure à celle présente par defaut dans Windows (mfc42).
DisableSpecificWarnings=4996 à mettre dans les options de compilo et il ne te burnera plus avec 'obsolète'.
Si tu prends des params extenes, gaffe que par contre là il a bien raison, faut absolument en controler la longueur vant de copier dans tes buffers.

ciao...
BruNews, MVP VC++
mardi 12 décembre 2006 à 07:18:37 | Re : login & mot de passe windows : gina.dll

nicolaslepot

Bonjour,

merci pour ta réponse.

pour l'erreur avec le main, c'était en effet a cause du mauvais choix du type de dll. Il fallait choisir la partagée. Par la même occasion, le message avec obsolète ne vient plus.

Il reste qqe warning C4996 (fonction posix désaprouvée), mais ça n'enpêche pas la compilation :)
Petite précision, j'ai fais un copier/coller du code de l'exemple pour le fichier .cpp et .def. Je me suis dit qu'avant de venir apporter mes modifications, ce serait déjà pas mal d'arriver à faire marchere l'exemple.

Pour le coup des MFC différentes entre vs8 et vs6, j'ai récupéré le setup vcredist_x86.exe qui a été installé avec vs8
(dans C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages\vcredist_x86).

J'ai donc copié vcredist_x86.exe sur la machine de test et je l'ai installé.

J'ai ensuite compilé la DLL en mode release, puis j'ai copié celle-ci sur le pc de test.

Malheureusement, ca ne marche toujours pas...

Devrais-je donner une config spéciale au compilateur pour que ça marche ?
J'ai testé qqes options mais sans succès. D'un autre côté, je sais pas trop quoi tester :)

Nico




Si vous avez une idée

mardi 12 décembre 2006 à 10:44:27 | Re : login & mot de passe windows : gina.dll

nicolaslepot

Re,

voilà, ça marche.

J'aimerais bien vous dire ce que j'ai fait exactement pour faire aller le code, mais j'en suis incapable... :) J'ai joué avec les options du compilateur.

nico


Cette discussion est classée dans : login, mot, dll, passe, mfc


Répondre à ce message

Sujets en rapport avec ce message

Creer une boite de dialogue avec login et mot de passe en C++ [ par HpZouil ] Hp ZouilJe suis sous visual C++ 6 et je cherche a créer une boite de dialogue sous windows qui demande l'entrée d'un login et d'un mot de passe et le Session avec base de données [ par emmanuel9 ] Bonjour à tous, J'ai une table Personne dans mon sgbd Sql Server avec deux colonnne "Login" et "Mot de passe", et j'ai un logiciel dans lequel on de Comment utiliser une bibioltheque MFC independante [ par rani_topo ] Au secours!!,Bonjour,Je suis etudiant, debutant en programmation, je developpe un outil en vc++ 6. Je dispose d'une bibliotheque MFC developee en c ai mot de passe [ par salim_samir ] salut a tous le mondej'ai réaliser un programme et je veut savoir comment je peut le protéger par un mot de passe.merci de me donnée un exemple.merci ordinal 5076 [ par samia82 ] bonjour a tous ,j ai cree une application mfc mais le.exe ne s'ouvre pas . 1.j ai essaye projects settings use mfc as a static library sans résultat2. mysql_real_connect & "mot de passe" [ par cht2000 ] bonjour tout le monde,Je suis sur un problème étrange. je suis en train de faire un programme en C qui globalement me permet d'envoyer des requêtes su [AIDE] Dll MFC utilisé sous Excel [ par nico_fip1 ] Bonjour,J'ai crée sous VC++ une dll de type MFC. En fait, elle ouvre un fichier, le traite et ressort un autre fichier (cvs).Cette Dll est utilisé dan comment passer root par programme C [ par timy94 ] Bonjour à tous.Voila mon problème. Comment passer root (en connaissant le mot de passe root bien sûr!) par programme C sans taper le mot de passe dans mot de passe [ par abirti ] Salut tout le monde je suis bien une débutante avec C++.Net 2003,et je suis entrain de faire une interface qui demande la saisie d'un nom d'utilisateu sasir un mot de passe ds un controle edit [ par progrima ] Bonjour, lors de la saisie d'un mot de passe dans un controle edit, je cherche une facon pour rendre les caractères invisible (exemple :**** ou ....)


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,763 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales