Hola, he encontrado algo de tiempo para hacer el codigo para empezar.
El programa coge una contraseña que introduzcas y la compara con un archivo de texto (sirve para 13 caracteres, asi que no hay que pasar de 4 a 13 ya).
(falta colocar las tildes y ñ, pero no recuerdo como era xD)
Codigo:
//Código by: El_Java
#include <iostream>
#include <fstream>
#include <string.h>
//using namespace std; para programas largos es mejor no ponerlo
int main(){
std::ifstream txtIn;
char texto[14], clave[14];
std::cout << "Escribe la contrasenha a comparar: " << std::endl;
std::cin.getline(clave, 14);
txtIn.open("pass.txt");
if (!txtIn.is_open()){
std::cout << "Error abriendo archivo, comprueba que existe el archivo" << std::endl;
}
if (!txtIn.good()){
std::cout << "Error, no es posible leer el archivo" << std::endl;
}
while((txtIn.eof()) == 0){ //mientras el archivo no haya llegado al final
txtIn.getline(texto, 14, '\n');
if ((strcmp(texto, clave)) == 0) break; //Si alguna contrasenha concuerda, parar el bucle while
if ((strcmp(texto, "NINGUNA")) == 0) break;
}
if((strcmp(texto, "NINGUNA")) == 0){
std::cout << "Ninguna contrasenha valida" << std::endl;
}
else{
std::cout << "Encontrada la contrasenha:\n";
std::cout << "texto: " << texto << std::endl;
std::cout << "clave: " << clave << std::endl;
}
return 0;
}
Y para que funcione el texto tiene que tener estas caracteristicas:
- Llamarse pass.txt
- Por cada linea tener una contraseña
- Al final del texto terminarlo con la palabra NINGUNA
tal que quedaría asi:
pass.txt pass.txt
1234567899874 contraseña1
9876543210123 contraseña2
7412589634157 contraseña3
asdfghjkkasfg contrseña4
NINGUNA final del texto
quedo muy bien tu código, ahora la cosa es usar las api`s de windows para poder inyectar la clave en el box de la password y probar las posibles contraseñas, aaa!! y agregar mas contraseñas claro, voy a ver si me doy un tiempo para hacerlo, saludos.