Console with a WinForm

Often, you need a console window together with a WinForm application. It can be very handy for debugging purposes while developping, but also for a (temporary) logging of some data. It is very simple to do. The following program demonstrates it, using P/Invoke.

Start a new Windows application, drop a CheckBox on the form, name it ViewConsole, and copy the following code into it.

using System;
using System.Windows.Forms;
using System.Runtime.InteropServices;    // needed to call external
                                         // application (winAPI dll)

namespace WindowsApplication1
{
   partial class Form1: Form
   {
      public Form1()
      {
         InitializeComponent();
      }

      private void ViewConsole_CheckedChanged(object sender,
                                              EventArgs e)
      {
         if (ViewConsole.Checked)
            Win32.AllocConsole();
         else
            Win32.FreeConsole();
      }
   }

   public class Win32
   {
      [DllImport("kernel32.dll")]
      public static extern Boolean AllocConsole();
      [DllImport("kernel32.dll")]
      public static extern Boolean FreeConsole();
   }
}


Comments

  • There are no comments yet. Be the first to comment!

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • Organizations are increasingly gravitating toward mobile-first application development as they assess the need to revamp their application portfolios to support touch computing and mobility. Consumerization has brought higher expectations for application usability along with the mobile devices themselves. Enterprises are increasingly shifting their new application acquisitions and development efforts toward mobile platforms. With this backdrop, it is natural to expect application platform vendors to invest in …

  • By now you've likely heard of Agile development and building products in small incremental pieces, so you can get real feedback along the way. In fact, you may even be considering using Agile on your next project. But where do you start? Agile can take a lot of forms, such as Scrum or Kanban. Each form has advantages and disadvantages, but both will help your team get the right feedback they need to build great products. Read this white paper to find out which one is right for you.

Most Popular Programming Stories

More for Developers

RSS Feeds

Thanks for your registration, follow us on our social networks to keep up-to-date