Créer une Console Application invisible en C#

Salut a tous, pour les besoins d’un projet je devais pouvoir rendre une fenêtre console invisible a l’utilisateur pour des questions d’ergonomie.

Voici donc un petit bout de code utilisant de l’interop user32 pour réaliser cela .

Voici donc les imports :

[DllImport(“user32.dll”)]
public static extern IntPtr FindWindow(string lpClassName, string lpWindowName);

[DllImport(“user32.dll”)]
static extern bool ShowWindow(IntPtr hWnd, int nCmdShow); 

FindWindow vas nous permettre d’obtenir un pointeur sur notre fenêtre, ShowWindow vas nous permettre d’activer ou désactiver la fenêtre.

On récupère donc un pointeur sur notre fenêtre avec en second argument le caption name, dans mon cas le path d’execution :

IntPtr hWnd = FindWindow(null, System.Windows.Forms.Application.ExecutablePath);

Ensuite on peut afficher la window avec 1 en second argument et le pointeur en premier :

if (hWnd != IntPtr.Zero)
{
ShowWindow(hWnd, 1);
}

Ou la render invisible avec 0 en second argument :

if (hWnd != IntPtr.Zero)
{
ShowWindow(hWnd, 0);
}

En espérant que cela vous sera utile ^^

Inform@tiquement
Istace Emmanuel

2 thoughts on “Créer une Console Application invisible en C#

  1. Learn More

    If some one wants to be updated with newest technologies after that he
    must be pay a visit this website and be up to date daily.

    Reply
  2. Michael Kors Bags

    Wow that was odd. I just wrote an extremely long comment but after I
    clicked submit my comment didn’t appear. Grrrr… well I’m not writing all that
    over again. Anyhow, just wanted to say superb blog!

    Reply

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s