Ukrycie wiersza poleceń podczas działania programu?

0

Mam aplikację konsolową, która ma jednak działać w tle, nie dając użytkownikowi komunikatów (no może poza jakimiś pop-up'ami) W jaki sposób ukryć okno wiersza poleceń?

0

O ile ja wiem, nedase. Jeśli nie chcesz żeby była konsola to może po prostu jej nie twórz? (czytaj: stwórz aplikację "okienkową" i nie twórz okna).

0

Jak się nie da, jak się da ;)

#define _WIN32_WINNT 0x0500
HWND hWnd = GetConsoleWindow();
ShowWindow( hWnd, SW_HIDE );
0

Dzięki;)

0

Hmmm... co źle robię? Nie wywala nic, po prostu nie ukrywa, kompilator to Dev C++ (4.9.9.2)

 #include <cstdlib>
#include <iostream>
#define _WIN32_WINNT 0x0500

using namespace std;

int main(int argc, char *argv[])
{
    
    system("PAUSE");
    return EXIT_SUCCESS;
}
0

No a gdzie druga część tego co napisałem? :P

0

ale gafa;p
hmmm nadal nie kminię:

 #include <cstdlib>
#include <iostream>
#define _WIN32_WINNT 0x0500

using namespace std;

int main(int argc, char *argv[])
{

HWND hWnd = GetConsoleWindow();
ShowWindow( hWnd, SW_HIDE );
    system("PAUSE");
    return EXIT_SUCCESS;
}

Czy wstawiałem w mainie czy przed nim, nie łapał. Log krzyczy że nie zna zmiennych i każde pojedyncze słowo bierze za zmienną.

0

A dołączyłeś <windows.h>? Skąd kompilator ma wiedzieć co to jest HWND?

Poza tym, jeżeli kompilujesz w g++ (dev-cpp, code blocks...) to nie potrzebujesz tej sztuczki, wystarczy dodać flagę -mwindows przy kompilacji.

0

to define, jeżeli ma cokolwiek robić, powinno być przed #include <windows.h>
chociaż sądzę, że nie jest potrzebne.

0

hmmm... mógłby ktoś pokazać jak to powinno wyglądać? Bo ja za głupi na to jestem...

0

to sobie odpuść jak tego nie rozumiesz.

0

A może chodzi Ci po prostu o puszczenie aplikacji w tle?

$> aplikacja.exe &
0

Raczej z kodu wnioskuję, że chce schować swoją aplikację (pseudo wirusiki się pisze? :P)

0
pionner napisał(a)

hmmm... mógłby ktoś pokazać jak to powinno wyglądać? Bo ja za głupi na to jestem...

Dostałeś dwie podpowiedzi aby dodać <windows.h>. Trzeciej nie będzie.

0

tak, chcę schować swoją aplikację/ nie nie wiruski;p

0

Czy przez ten czas spróbowałeś dołączyć nagłówek, którego nazwa pojawiła się w tym wątku tyle razy?
Czy próbowałeś zamiast tego dodać flagę -mwindows? (Jeżeli używasz MinGW... Testowałem, działa.).

0

Owszem, próbowałem, ale nie idzie, interesuje mnie natomiast o co chodzi z tą flagą- jestem początkujący i tego nie kryję. Jak się ją dodaje?

0

To jest dokładnie to co proponowałem w pierwszej odpowiedzi w temacie... Zmienia typ aplikacji na okienkową dzięki czemu nie ma ona konsoli...

edit: chodzi o parametr linii poleceń. można ją dodać pewnie w ustawieniach projektu twojego IDE - sprawdź w okolicach Project->Compiler Options albo coś takiego.

0

http://error501.wikidot.com/g-moja-pierwsza-kompilacja
Kiedy kompilujesz, np:
g++ -pedantic -ansi -O3 -Wall -Werror -Wextra -s -Woverflow -Wunused moje_zrodlo.cpp -o moja_binarka.exe
to -pedantic, -ansi i tak dalej - są to argumenty (parametry) podane do programu. Argumenty, które skutkują włączeniem lub wyłączeniem (1 lub 0) jakiejś opcji nazywane są "flagami". Wpisz:
g++ --help a dowiesz się więcej. ;)

Jeżeli używasz jakiegoś IDE, to flagi kompilatora możesz dodawać najpewniej w opcjach projektu.

1 użytkowników online, w tym zalogowanych: 0, gości: 1