[tc++ 3.1] protéger l'accès de votre ordinateur

Soyez le premier à donner votre avis sur cette source.

Snippet vu 6 158 fois - Téléchargée 34 fois

Contenu du snippet

Permet de protéger l'accès de votre ordinateur en utilisant un mot de passe.

Source / Exemple :


#include <iostream.h>
#include <stdlib.h>

int longeure_chaine(char * chaine);
int compare_chaine(char * chaine_1, char * chaine_2);
void affiche_erreur();
int verifie_mdp(char * char1, char * char2);

void main()
{
 system("cls");

 affiche_erreur();
}

int longueure_chaine(char * chaine)
 {
  int i = 0;

  while(chaine[i] != '\0')
   {
    i++;
   }

  return i;
 }

int compare_chaine(char * chaine_1, char * chaine_2)
 {
  int lon_ch1, lon_ch2, i;
  i = 0;

  lon_ch1 = longueure_chaine(chaine_1);
  lon_ch2 = longueure_chaine(chaine_2);

  if(lon_ch1 != lon_ch2)
   {
    return 1;
   }
  else
   {
    for(i = 0; i <= lon_ch1; i++)
     {
      if((chaine_1[i] == chaine_2[i]))
       {
        if(i == lon_ch1) return 0;
       }
      else
       {
	return 1;
       }
     }
   }
 }

void affiche_erreur()
 {
  system("cls");

  cout
      << "Veuillez entrer le mot de passe requis a l\'utilisation de cet ordinateur :" << endl;

  char * char_mdp = "01oPf023", * char_mdp_entree;
  char_mdp_entree = new char;

  cin
     >> char_mdp_entree;

  if(verifie_mdp(char_mdp, char_mdp_entree) == 0)
   {
    exit(0);
   }
  else
   {
    affiche_erreur();
   }
  delete [] char_mdp_entree;
 }

int verifie_mdp(char * char1, char * char2)
 {
  if(compare_chaine(char1, char2) == 0)
   {
    return 0;
   }
  else
   {
    return 1;
   }
 }

Conclusion :


Il suffit ensuite d'ajouter le nom de votre executable dans autoexec.bat !

A voir également

Ajouter un commentaire

Commentaires

mmuller57
Messages postés
174
Date d'inscription
mardi 10 avril 2001
Statut
Membre
Dernière intervention
30 juillet 2003
1 -
non je préférais utiliser mes fonctions :)
cs_fabrizio
Messages postés
2
Date d'inscription
lundi 3 février 2003
Statut
Membre
Dernière intervention
11 février 2004
-
utilise plutot la bibliotheque C pour les operations sur les chaines


#include <cstring>

int strcmp(const char *s1, const char *s2);
int strncmp(const char *s1, const char *s2, size_t n);

size_t strlen (const char *s);



la tu utilise bcp bcp trop de condition
int verifie_mdp(char * char1, char * char2)
{
if(compare_chaine(char1, char2) == 0)
{
return 0;
}
else
{
return 1;
}
}



tu peu le remplacer par

bool verifie_mdp(const char* char1, const char* char2)
{
//return(compare_chaine(char1, char2) == 0);
return(strcmp(char1, char2) == 0);
}
trinitacs
Messages postés
249
Date d'inscription
mardi 16 juillet 2002
Statut
Membre
Dernière intervention
7 août 2003
1 -
Ce serait bien de mettre des commentaires.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.