Ukrywanie okna konsoli windows Vista

0

Mam aplikację konsolową (cpp) która uruchamia inne aplikacje, a następnie sama się chowa.

Wszystko działa w porządku dopóki nie uruchomiłem jej na windows Vista (ale shit!),
okno konsoli nie chowa się.

Korzystam z takiego kodu:

HWND stealth;
	AllocConsole();
	stealth=FindWindowA("ConsoleWindowClass",NULL);
	ShowWindow(stealth,0);
 

Na xp wszystko działa poprawnie.
Wyszukałem w sieci jeszcze taki kod:

 

HWND stealth2 = GetConsoleWindow();
    ShowWindow( stealth2, SW_HIDE );

jednak nie wiem czy on działa, na jutro muszę dostarczyć program a nie mam visty, aby sprawdzić działanie.

Proszę o sprawdzenie drugiego sposobu na viście i/lub podanie innego sposobu na ukrycie okna.

Z góry dzięki za pomoc.

P.S. Niestety nie mogę {ujawnić, pokazać} całego kodu, myślę, że ten fragment w zupełności wystarczy.

0

Żeby nie było niedomówień nagłówki:

 
#define _WIN32_WINNT 0x0500
#include <windows.h>
#include <stdio.h>
#include <winuser.h>
#include <ctime>
#include <cstdlib>
0

Spróbuj użyć SW_HIDE zamiast 0

0

To nie ma znaczenia SW_HIDE == 0

0

Może zwyczajnie zmień subsystem na okienka? Skoro stworzyłeś projekt konsolowy to nie dziw się, że nie da się jej tak łatwo ukryć ;)). A jak przestawisz subsystem na windows to konsolę i tak możesz stworzyć. Są do tego gotowe kody na msdn.

0

Zna ktoś szybki sposób ukrycia konsoli??

Mam 30 min do autobusu, a jeszcze muszę zjeść i skompilować ^^

Wiem jak to zrobić z WinAPI (przed chwilą zrobiłem), ale nie zdążę przepisać całego kodu. (Może kanapki dodadzą mi siły :P )

Z góry dzięki za pomoc

0

Zdążyłem :D

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