[Aporte] Qt4 Gold Serial Recover

Iniciado por overxfl0w13, 18 Julio 2012, 21:48 PM

0 Miembros y 1 Visitante están viendo este tema.

overxfl0w13

EDIT: He actualizado retirando los serials del ejecutable y añadiéndolos a un archivo .db con sqlite tal como recomendó Astaroth. Con esto dejo a los usuarios del foro añadir nuevos serials al archivo database y cuando haya suficientes serials nuevos añadidos se irá modificando el programa, solo hay que comunicarlo :)



Recuerdo que tiene que estar instalado Qt4 a no ser que se descargue el exe. Dejo el code:

Headers

Window.hpp:
Código (cpp) [Seleccionar]
#include <QtGui>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QVariant>

class window : public QObject
{
   Q_OBJECT

   public:
       window();
       ~window();

   private slots:
       void serialOffice();
       void serialNero();
       void serialPhotoshop();
       void serialTuneup();
       void distribuirSlots();

   public:
       QWidget *mainWindow;
       QVBoxLayout *mainLayout;
       QPixmap *imageLabel;
       QLabel *mainImage,*mainSpace,*mainCongratulations;
       QComboBox *mainMenu;
       QListWidget *mostrarSerial;
       QPushButton *pasarSerial;
       QSound *mainSong;
       QString serial;
       QSqlDatabase DataBase;
       QSqlQuery consultaSerial;

};


Sources

Window.cpp:
Código (cpp) [Seleccionar]
#include "window.hpp"


void window::distribuirSlots()
{
   if(mainMenu->currentText() == "Office Professional 2010") serialOffice();
   if(mainMenu->currentText() == "Nero 11 Platinum") serialNero();
   if(mainMenu->currentText() == "Adobe Photoshop CS6") serialPhotoshop();
   if(mainMenu->currentText() == "TuneUp Utilities 2012") serialTuneup();

}

void window::serialOffice()
{
   mostrarSerial->clear();
   QSqlQuery consultaSerial(QString("select serial from office"));
   consultaSerial.exec();
   while(consultaSerial.next())
   {
   serial = QString(consultaSerial.value(0).toString());
   mostrarSerial->addItem(serial);
   }
   mostrarSerial->show();
}

void window::serialNero()
{
   mostrarSerial->clear();
   QSqlQuery consultaSerial(QString("select serial from nero"));
   consultaSerial.exec();
   while(consultaSerial.next())
   {
   serial = QString(consultaSerial.value(0).toString());
   mostrarSerial->addItem(serial);
   }
   mostrarSerial->show();
}

void window::serialPhotoshop()
{
   mostrarSerial->clear();
   QSqlQuery consultaSerial(QString("select serial from photoshop"));
   consultaSerial.exec();
   while(consultaSerial.next())
   {
   serial = QString(consultaSerial.value(0).toString());
   mostrarSerial->addItem(serial);
   }
   mostrarSerial->show();
}

void window::serialTuneup()
{
   mostrarSerial->clear();
   QSqlQuery consultaSerial(QString("select serial from tuneup"));
   consultaSerial.exec();
   while(consultaSerial.next())
   {
   serial = QString(consultaSerial.value(0).toString());
   mostrarSerial->addItem(serial);
   }
   mostrarSerial->show();
}


window::window()
{
   /********** Declaración de atributos **********/

   mainWindow = new QWidget;
   imageLabel = new QPixmap("Resources/Images/Image.png");
   mainSpace = new QLabel(" ");
   mainCongratulations = new QLabel;
   mainLayout = new QVBoxLayout;
   mainImage = new QLabel;
   mainMenu = new QComboBox;
   mostrarSerial = new QListWidget;
   pasarSerial = new QPushButton("Aceptar");
   mainSong = new QSound("Resources/Sound/song.wav");

   /********** Construcción Ventana **********/

   mainSong->setLoops(20);
   mainCongratulations->setAlignment(Qt::AlignRight);
   mainCongratulations->setText("<font size=3 color=#f3ca26>By Overxfl0w to elhacker.net</font>");
   mainWindow->setWindowTitle("Gold Serial Recover");
   mainSong->play();
   mainWindow->setMinimumSize(300,400);
   mainWindow->setMaximumSize(300,400);
   mainImage->setPixmap(*imageLabel);
   mainImage->setAlignment(Qt::AlignHCenter);
   mainImage->setScaledContents(true);
   mainMenu->addItem("Office Professional 2010");
   mainMenu->addItem("Nero 11 Platinum");
   mainMenu->addItem("Adobe Photoshop CS6");
   mainMenu->addItem("TuneUp Utilities 2012");


   /********** Adición de Capas **********/

   mainLayout->addWidget(mainImage);
   mainLayout->addWidget(mainSpace);
   mainLayout->addWidget(mainMenu);
   mainLayout->addWidget(mostrarSerial);
   mainLayout->addWidget(pasarSerial);
   mainLayout->addWidget(mainCongratulations);
   mainWindow->setLayout(mainLayout);
   mainWindow->show();

  /********** Conexión Botones **********/

   QObject::connect(pasarSerial,SIGNAL(clicked()),this,SLOT(distribuirSlots()));

   /********* Conexión DataBase *********/

   QSqlDatabase DataBase = QSqlDatabase::addDatabase("QSQLITE");
   DataBase.setDatabaseName("database.db");
   DataBase.open();
}

window::~window()
{
  DataBase.close();
  delete mainWindow;
  delete imageLabel;
  delete mainLayout;
  delete mainImage;
  delete mainMenu;
  delete mostrarSerial;
  delete mainSpace;
  delete mainCongratulations;
  delete pasarSerial;
  delete mainSong;
}



Main.cpp:
Código (cpp) [Seleccionar]
#include "window.hpp"
int main(int argc, char *argv[])
{
   QApplication a(argc, argv);
   window window;
   return a.exec();
}


El archivo database.db que contiene los serials es éste:

http://www.mediafire.com/?fq5jxk7bw9552lu

Y el .exe completo con las .dll (debido a esto ocupa un gran tamaño) aquí:

http://www.mediafire.com/?dsy1bygykgxnkcm

Espero que sea de vuestro agrado y podáis colaborar con el proyecto  ;-)
[/url]

avesudra

#1
¡Muy buena la idea!  ;-) Aunque ten cuidado con las empresas no te vayan a coger por piratilla  :xD Una preguntilla , ¿porque no compilas las librerías Qt estáticamente y distribuyes el ejecutable ? Por ejemplo en lo del chat quería probarlo pero no me funcionaba porque me faltaba SMFL aunque no sé si se puede compilar estáticamente ésta última pero ya te digo que sería util para el que quiera verlo y nó instalar SMFL Qt u otras librerías.

¡Un saludo y gracias por el gran aporte!
Regístrate en

overxfl0w13

Cita de: avesudra en 18 Julio 2012, 22:36 PM
¡Muy buena la idea!  ;-) Aunque ten cuidado con las empresas no te vayan a coger por piratilla  :xD Una preguntilla , ¿porque no compilas las librerías Qt estáticamente y distribuyes el ejecutable ? Por ejemplo en lo del chat quería probarlo pero no me funcionaba porque me faltaba SMFL aunque no sé si se puede compilar estáticamente ésta última pero ya te digo que sería util para el que quiera verlo y nó instalar SMFL Qt u otras librerías.

¡Un saludo y gracias por el gran aporte!

bueno lo del piratilla  :xD. Voy a hacerlo como tu me dices y en un momento pego links :).

Actualizaré el post del chat también con links :D
[/url]

BlackZeroX

Usa SQLite para que el almacenamiento de los seriales sean externos al ejecutable.

Dulces Lunas!¡.
The Dark Shadow is my passion.

overxfl0w13

#4
Cita de: BlackZeroX (Astaroth) en 18 Julio 2012, 22:55 PM
Usa SQLite para que sean los seriales ajenos a el ejecutable.

Dulces Lunas!¡.

Se, tenía pensado hacerlo, así me ahorro líneas y problemas, también se me había ocurrido abrir una db en byethost por ejemplo, accesible por los users de elhacker para añadir nuevos serials.

De todas formas, eso plantea otro problema y es que no puedes ver los serials sin conexión a internet, así que mejor será dejarlo estar, hasta que me apetezca hacer otra versión xD.

Muchas Gracias Astaroth  ;D
[/url]

Puntoinfinito

Eres increíble tío... esto en un mes?
AHORA EN SOFTONIC || CLICK HERE!!
Base64: QWNhYmFzIGRlIHBlcmRlciAxIG1pbnV0byBkZSB0dSB2aWRhLiBPbOkh



HACK AND 1337 : http://hackandleet.blogspot.com
WEBSITE: http://www.infiniterware.

overxfl0w13

Cita de: puntoinfinito en 20 Julio 2012, 16:20 PM
Eres increíble tío... esto en un mes?

jaja se hace lo que se puede, tampoco es tan difícil, lo jodido es mantener el code y mejorar la eficiencia :).

A ver si te pones ya con C++, un saludo :)
[/url]

Puntoinfinito

Estoy en ello!!
Ya he echo mi "Hello world!"

Jaja, saludos.
AHORA EN SOFTONIC || CLICK HERE!!
Base64: QWNhYmFzIGRlIHBlcmRlciAxIG1pbnV0byBkZSB0dSB2aWRhLiBPbOkh



HACK AND 1337 : http://hackandleet.blogspot.com
WEBSITE: http://www.infiniterware.

BlackZeroX

#8
Cita de: overxfl0w13 en 18 Julio 2012, 22:57 PM
Se, tenía pensado hacerlo, así me ahorro líneas y problemas, también se me había ocurrido abrir una db en byethost por ejemplo, accesible por los users de elhacker para añadir nuevos serials.

De todas formas, eso plantea otro problema y es que no puedes ver los serials sin conexión a internet, así que mejor será dejarlo estar, hasta que me apetezca hacer otra versión xD.

Muchas Gracias Astaroth  ;D

SQLite es una BDD lite (simple y sencilla pero potente) no requiere de conexión a Internet...

P.D.: Un mes es demasiado tiempo para algo así... a lo menos en un mes se escriben mas de 5000 a 10 000 lineas... aun que difiere según la destreza del planteamiento (diseño y estructura-miento del codigo y algoritmo).

Dulces Lunas!¡.
The Dark Shadow is my passion.

maxim_o

Creo que no se refiere a que haya estado un mes para crear este proyecto....
Sino que empezó con C/C++ hace un mes....