Bonjour,

J'ai une simple application console Qt5.6 qui génère systématiquement le message "Qt: Untested Windows version 10.0 detected!"
Normal mais j'aimerai le retirer et pour ca j'utilise le code ci-dessous. Mais visiblement ca fonctionne pour " qDebug()" mais pas pour ce fameux message.
Je ne comprend pas bien pourquoi.

Code : 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
 
void myMessageOutput(QtMsgType type, const QMessageLogContext &context, const QString &msg)
{
    QByteArray localMsg = msg.toLocal8Bit();
    const char *file = context.file ? context.file : "";
    const char *function = context.function ? context.function : "";
    switch (type) {
    case QtDebugMsg:
        fprintf(stderr, "Debug: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
        break;
    case QtWarningMsg:
        fprintf(stderr, "Warning: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
        break;
    case QtCriticalMsg:
        fprintf(stderr, "Critical: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
        break;
    case QtFatalMsg:
        fprintf(stderr, "Fatal: %s (%s:%u, %s)\n", localMsg.constData(), file, context.line, function);
        break;
    }
}
 
int main(int argc, char* argv[])
{
  qInstallMessageHandler(myMessageOutput);
  qDebug() << "Ce message est bien intercepté par myMessageOutput";
  QCoreApplication app(argc, argv);
  return(app.exec());
}