Search code examples
c#visual-studio-2012user32

Can't import User32.dll into Visual Studio


I tried:

  • To add user32.dll from Reference Manager, and imported it from Windows\System32\user32.dll, I got Error Message:

    A reference to 'C:\Windows\System32\user32.dll couldn't be added. Please make sure that the file is accessible, and that it is a valid assembly or COM component.

  • using System.Runtime.InteropServices; [DllImport("user32")]

  • To launch Visual Studio as Administrator

Nothing works... it goes on my nerves I am trying 2 hours to import this damn .dll...


Solution

  • You do not need to add a reference to User32.dll. It is part of Windows and can be imported in your code without adding a reference. You do this using P/Invoke.

    [System.Runtime.InteropServices.DllImport("user32.dll")]
    public static extern void SetWindowText(int hWnd, String text);
    
    private void button3_Click(object sender, EventArgs e)
    {
        IntPtr wHnd = this.Handle;//assuming you are in a C# form application
        SetWindowText(wHnd.ToInt32(), "New Window Title");
    }
    

    See Also: