eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingokienko z cmd.exe w Qt C++ › Re: okienko z cmd.exe w Qt C++
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!wsisiz.edu.pl!.POSTED.2a00:f41:1821:c74
    5:9a7f:bdb3:51a3:22ef!not-for-mail
    From: Jivanmukta <j...@p...onet.pl>
    Newsgroups: pl.comp.programming
    Subject: Re: okienko z cmd.exe w Qt C++
    Date: Fri, 15 Apr 2022 19:10:08 +0200
    Organization: http://www.wit.edu.pl
    Message-ID: <t3c8ts$3advk$1@portraits.wsisiz.edu.pl>
    References: <t2ml98$3a56e$2@portraits.wsisiz.edu.pl>
    <6...@g...com>
    Mime-Version: 1.0
    Content-Type: text/plain; charset=UTF-8; format=flowed
    Content-Transfer-Encoding: 8bit
    Injection-Date: Fri, 15 Apr 2022 17:10:20 -0000 (UTC)
    Injection-Info: portraits.wsisiz.edu.pl;
    posting-host="2a00:f41:1821:c745:9a7f:bdb3:51a3:22ef";
    logging-data="3487732"; mail-complaints-to="a...@w...edu.pl"
    User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101
    Thunderbird/91.7.0
    Content-Language: en-US
    In-Reply-To: <6...@g...com>
    Xref: news-archive.icm.edu.pl pl.comp.programming:215789
    [ ukryj nagłówki ]

    W dniu 15.04.2022 o 15:53, Adam M pisze:
    > On Thursday, April 7, 2022 at 8:26:19 AM UTC-4, Jivanmukta wrote:
    >> Używam C++ i Qt5.
    >> Potrzebuje uruchomić pewien program konsolowy z argumentami ale tak,
    >> żeby było widać okienko cmd.exe z uruchomionym tym programem.
    >> Próbowałem tak:
    >>
    >> std::string terminal = exec_system(L"echo %windir%") +
    >> "\\system32\\cmd.exe";
    >> terminal = str_replace("\n", "", str_replace(END_LINE, "", terminal));
    >> QProcess *process = new QProcess();
    >> QString exec = QString::fromStdString(terminal);
    >> QStringList params;
    >> params << "/C";
    >> for (std::string s : explode(std::string(" "), command)) {
    >> params << str_replace("\"", "", s).c_str();
    >> }
    >> process->start(exec, params);
    >> process->waitForFinished();
    >> delete process;
    >>
    >> ale niestety okienko cmd.exe się nie wyświetla.
    >> Tzn. pojawia się na jakiś czas klepsydra, ale okienka nie ma.
    >>
    >> Jak to zrobić?
    > Do pliku pro dodaj:
    > CONFIG += console
    > do pliku CPP ktory startuje twoja aplikacje dodaj
    >
    > #include <windows.h>
    > #include <stdio.h>
    >
    > w funkcji main(..) dodaj
    >
    > // detach from the current console window
    > // if launched from a console window, that will still run waiting for the new
    console (below) to close
    > // it is useful to detach from Qt Creator's <Application output> panel
    > FreeConsole();
    >
    > // create a separate new console window
    > AllocConsole();
    >
    > // attach the new console to this application's process
    > AttachConsole(GetCurrentProcessId());
    >
    > // reopen the std I/O streams to redirect I/O to the new console
    > freopen("CON", "w", stdout);
    > freopen("CON", "w", stderr);
    > freopen("CON", "r", stdin);
    >

    A jak wystartować aplikację?

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: