Find and Close the window using WIN API

Find the Window

The FindWindow function retrieves a handle to the top-level window whose class name and window name match the specified strings. This function does not search child windows. This function does not perform a case-sensitive search.

FindWindow(string lpClassName,string lpWindowName)

Finding ClassName and WindowName using Spy++

Spy++ (SPYXX.EXE) is a Win32-based utility that gives you a graphical view of the system's processes, threads, windows, and window messages.With the Window Finder Tool you can find the properties of a selected window.

Step 1 : Arrange your windows so that Spy++ and the subject window are visible.

Step 2: From the Spy menu, choose Find Window to open the Find Window dialog box.

Step 3:  Drag the Finder Tool to the desired window. As you drag the tool, window details display in the dialog box. (Handle,Caption(Window Name),Class Name)

Example for closing Notepad



public static extern int FindWindow(string lpClassName,string lpWindowName);


Public static extern int SendMessage(int hWnd,uint Msg,int wParam,int lParam);

public const int WM_SYSCOMMAND = 0x0112;

public const int SC_CLOSE = 0xF060;

private void button1_Click(object sender, EventArgs e)


    // retrieve the handler of the window

    int iHandle = FindWindow("Notepad", "Untitled - Notepad");

    if (iHandle > 0)


        // close the window using API

        SendMessage(iHandle, WM_SYSCOMMAND, SC_CLOSE, 0);


Closing google window

private void button2_Click(object sender, EventArgs e)


    //closing google window

    int googleHandle = FindWindow("IEFrame", "Google - Microsoft Internet Explorer provided by Cognizant");

    if (googleHandle > 0)


        // close the window using API

        SendMessage(googleHandle, WM_SYSCOMMAND, SC_CLOSE, 0);



Build smarter apps with Machine Learning, Bots, Cognitive Services - Start free.

Start Learning Now