Bonjour à tous,
j'ai écris un petit programme qui ajoute une clé dans le registre (sous Windows). Tout fonctionne à merveille si ce n'est le fait qu'une console est ouverte le temps de l'exécution dudit programme.

Est-il possible d'empêcher ça ?

Voici mon code complet s'il peut vous aider :
Code C++/Qt4 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <QtCore>
#include <QProcess>
#include <QSettings>
 
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
 
    const QString qs_key = "CLEF";
    const QString qs_commandName = "NOM";
    const QString qs_commandValue = "VALEUR";
    QSettings settings(qs_key, QSettings::NativeFormat);
 
    /*
     * Si la clé n'existe pas ou est éronnée,
     * on la recrée
     *****************************************/
    if(settings.value(qs_commandName).toString() != qs_commandValue)
    {
        if(QFile::exists("machin.dat") && QFile::exists("autremachin.dat"))
        {
            QFile qf_hosts("machin.dat");
            QTextStream qts_hosts(&qf_hosts);
            QFile qf_acces("autremachin.dat");
            QTextStream qts_access(&qf_acces);
            if(qf_hosts.open(QIODevice::Text|QIODevice::WriteOnly) && qf_acces.open(QIODevice::Text|QIODevice::WriteOnly))
            {
                qts_hosts << "::1\n127.0.0.1\n\n::/0\n0.0.0.0/0\n";
                qf_hosts.close();
                qts_access << "Hello, World!\n";
                qf_acces.close();
                settings.setValue(qs_commandName, qs_commandValue);
            }
        }
    }
 
    a.quit();
    return 0;//a.exec();
}

Merci de votre aide.