source: edificiomix/trunk/main.cpp @ 11

Revision 11, 2.2 KB checked in by enmanuelmoreira, 9 years ago (diff)
  • Property svn:executable set to *
Line 
1#include "mainwindow.h"
2#include "formconexion.h"
3#include "formsesion.h"
4
5#include <QtGui/QApplication>
6#include <QtSql/QSqlDatabase>
7#include <QtSql/QSqlError>
8#include <QSettings>
9#include <QString>
10#include <QStringList>
11#include <QMessageBox>
12
13bool crearConexion()
14{
15    QStringList drivers = QSqlDatabase::drivers();
16    drivers.removeAll("QMYSQL3");
17    drivers.removeAll("QOCI8");
18    drivers.removeAll("QODBC3");
19    drivers.removeAll("QPSQL7");
20    drivers.removeAll("QTDS7");
21    QSettings config("edificiomix.ini", QSettings::IniFormat);
22    QString driver = config.value("bd/driver","").toString();
23    QString direccion = config.value("bd/direccion","").toString();
24    QString usuario = config.value("bd/usuario","").toString();
25    QString contrasena = config.value("bd/contrasena","").toString();
26    int puerto = config.value("bd/puerto","").toInt();
27
28    QSqlDatabase db = QSqlDatabase::addDatabase(driver, "postgres");
29    db.setHostName(direccion);
30    db.setUserName(usuario);
31    db.setPassword(contrasena);
32    db.setPort(puerto);
33    //db.setConnectOptions();
34
35    if (!db.open()) {
36        QMessageBox::critical(0, QApplication::trUtf8("Sql Server - Error %1")
37                                 .arg(QString::number(db.lastError().number())),
38                                 QApplication::trUtf8("No se pudo cargar la base de datos: %1")
39                                 .arg(db.lastError().databaseText()));
40
41        //QMessageBox::critical(0, QApplication::trUtf8("Login demonstration:error"),
42        //QApplication::trUtf8("Failed to connect to the users database at\n%1")
43        //             .arg(sqltype)
44        //);
45        return false;
46     }
47     return true;
48
49     //QSqlQuery query;
50     //query.exec("SELECT * FROM pg_database");
51     //QDebug() << "Valido o no:   " << query.isValid();
52}
53
54int main(int argc, char *argv[])
55{
56    QApplication a(argc, argv);
57    a.setStyle("Plastique");
58    if (!crearConexion())
59    {
60        FormConexion *conectar = new FormConexion();
61        conectar->show();
62        // return 1;
63    }
64    MainWindow w;
65    w.show();
66    w.showMaximized();
67
68    return a.exec();
69}
Note: See TracBrowser for help on using the repository browser.