Страницы

Поиск по вопросам

воскресенье, 29 декабря 2019 г.

Как убрать консольное окно на старте без использования winMain?

#visual_studio #qt #консоль #main


Перед появлением графического окна выплывает консольное окно на старте, как от него
избавится?
(Без замены main на winMain!)
код main'а следующий:

  int main(int _nArgCount, char * _pArgValues[]) {

    QApplication app(_nArgCount, _pArgValues);

    //QMLblock
    QString strQmlPath = "qrc:qml/main.qml";
    QQmlApplicationEngine engine;
    QQmlComponent component(&engine, QUrl(strQmlPath));
    if (component.status() == QQmlComponent::Error) {
        qDebug()<<"Error:"<


Ответы

Ответ 1



Из аналогичного вопроса на enSO (в переводе): В настройках линковщика указать: /SUBSYSTEM:windows /ENTRY:mainCRTStartup Или использовать следующую #pragma в исходном файле с функцией main: #pragma comment(linker, "/SUBSYSTEM:windows /ENTRY:mainCRTStartup")

Ответ 2



Если дело происходит в QtCreator, а система сборки - qmake, нужно залезть в файл проекта (*.pro) и вышвырнуть оттуда опцию -console

Ответ 3



По хардкору берете Detect it Easy -> PE -> Subsystem и меняете значение на 02 WINDOWS_GUI В Visual Studio в настройках проекта убираете Console на Windows во вкладке Linker или соседней, лень открывать. Если в Qt Creator, то как сказали выше.

Комментариев нет:

Отправить комментарий