[DllImport("user32.dll", EntryPoint="SendMessageA",SetLastError=true)]  static extern int SendMessage (    IntPtr hwnd,   int wMsg,   int wParam,   int lParam);其中[DllImport("user32.dll", EntryPoint="SendMessageA",SetLastError=true)]是什么意思呀

解决方案 »

  1.   

    [DllImport("user32.dll", EntryPoint="SendMessageA",SetLastError=true)]
    这个是标记C/C++的DLL的函数信息函数位于user32.dll 公开的地址名称为SendMessageA,标记记录错误信息为trueSetLastError = true时 可以调用系统API:GetLastError 获取最后发生的错误信息.C#可以在DllImport属性中设置SetLastError=true之后使用Marshal.GetLastWin32Error来获得错误信息
      

  2.   

    DllImport这个是调用非托管函数,也就是系统函数必须用到的标签,
    "user32.dll"这个就是指定你要用到系统级API是属于那个系统级类库的!
    EntryPoint="SendMessageA"对应要调用的是"user32.dll"中的哪个方法SetLastError输出错误描述