Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C++CLI / VB .Net / .Net-Framework » Konsolenfenster verstecken

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
02.06.2007, 13:16 Uhr
Eroli



Hallo zusammen,

ihr habt ja lange nichts mehr von mir gehört, also:

Wie kann ich das Konsolenfenster meiner Konsolenanwendung verstecken? Keine Angst, es kommt dafür eine GUI oder (bei Linux) eben auch nicht. Es wird aber schöner, wenn das Fenster bei Windows verschwindet und dem User nur die GUI ersichtlich wird.

Habt ihr Ideen?

Eroli
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
02.06.2007, 17:01 Uhr
Uwe
C/C++ Master
(Administrator)


Hallo,

C++:
namespace HideConsoleExample
{
    class Program
    {
        const int SW_HIDE = 0;
        const int SW_SHOW = 5;
        [DllImport("kernel32")]
        static extern IntPtr GetConsoleWindow();
        [DllImport("user32")]
        static extern bool ShowWindow(IntPtr hwnd, int nCmdShow);
        [DllImport("user32")]
        static extern bool IsWindowVisible(IntPtr hwnd);

        public static bool Visible
        {
            get
            {
                IntPtr hwnd = GetConsoleWindow();
                return hwnd != IntPtr.Zero && IsWindowVisible(hwnd);
            }
            set
            {
                IntPtr hwnd = GetConsoleWindow();
                if (hwnd != IntPtr.Zero)
                    ShowWindow(hwnd, value ? SW_SHOW : SW_HIDE);
            }
        }
        static void Main(string[] args)
        {
            if (Program.Visible)
                Program.Visible = false;
            for (int i = 0; i <= 100000; i++)
            {
                Console.WriteLine("Test");
            }
            if (!Program.Visible)
                Program.Visible = true;
            Console.ReadLine();
        }
    }
}


--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe

Dieser Post wurde am 02.06.2007 um 17:02 Uhr von Uwe editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
02.06.2007, 17:38 Uhr
Eroli



Danke, nur er meckert, dass ihm eine Using-Direktive fehlt? Welche muss ich denn dafür einbinden?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
02.06.2007, 17:45 Uhr
Uwe
C/C++ Master
(Administrator)



C++:
using System.Runtime.InteropServices;


--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
02.06.2007, 17:46 Uhr
Eroli



Und sag mal, ohne den Zugriff auf die WindowsAPI(?) geht das nicht, oder?
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
02.06.2007, 20:34 Uhr
Uwe
C/C++ Master
(Administrator)


Unsauber:
"Projekt-Eigenschaften/Anwendung/Ausgabetyp". Dort "Windows-Anwendung" einstellen.
--
"Es ist schwierig, ein Programm wirklich idiotensicher zu machen, weil Idioten so genial sind."

Bis dann...
Uwe
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
02.06.2007, 20:48 Uhr
Eroli



Geht aber nicht, denn wenn das Prog auf Linux laufen soll, brauch ich wieder die Konsole ^^
Oder soll ich das als Windows-Anwendung laufen lassen und kann dann irgendwie eine extra konsole starten?

Dieser Post wurde am 02.06.2007 um 20:48 Uhr von Eroli editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C++CLI / VB .Net / .Net-Framework ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: