无法将User32.dll导入Visual Studio

时间:2013-07-28 20:07:24

标签: c# visual-studio-2012 user32

我试过了:

  • 要从 Reference Manager 添加 user32.dll ,并从 Windows \ System32 \ user32.dll 导入,我得到了错误消息

    无法添加对“C:\ Windows \ System32 \ user32.dll”的引用。 请确保该文件可以访问,并且它是有效的程序集或COM组件。

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

  • 以管理员身份启动Visual Studio

什么都行不通......我很紧张我试着用2个小时进口这个该死的.dll ......

2 个答案:

答案 0 :(得分:9)

您无需添加对User32.dll的引用。它是Windows的一部分,可以在您的代码中导入而无需添加引用。您可以使用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");
}

另见:

答案 1 :(得分:1)

这不是.NET dll。您不像使用.NET dll那样“添加引用”。相反,您必须将P / Invoke代码添加到您的应用程序以调用所需的功能。这是学习pinvoke的好资源:http://pinvoke.net/