-
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ę?
Następne wpisy z tego wątku
- 18.04.22 18:30 Adam M
- 20.04.22 11:35 Jivanmukta
- 27.04.22 09:04 fir
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-02-19 Białystok => Data Engineer (Tech Leader) <=
- 2025-02-19 Kraków => Ekspert IT (obszar systemów sieciowych) <=
- 2025-02-19 Warszawa => Architekt rozwiązań (doświadczenie w obszarze Java, AWS
- 2025-02-19 Rzeszów => International Freight Forwarder <=
- 2025-02-19 Poznań => Konsultant wdrożeniowy Comarch XL/Optima (Księgowość i
- 2025-02-19 Chrzanów => Spedytor Międzynarodowy (handel ładunkami/prowadzenie f
- 2025-02-19 Bieruń => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-19 Nigdy
- 2025-02-19 Katowice => Key Account Manager (ERP) <=
- 2025-02-19 Żerniki => Dyspozytor Międzynarodowy <=
- 2025-02-19 Łódź => NodeJS Developer <=
- 2025-02-19 Wow...
- 2025-02-17 EPS12V
- 2025-02-18 Kraków => Spedytor Międzynarodowy <=
- 2025-02-18 Policja nie może się dowiedzieć komu administrator wynajmowal garaż.