GetCursorPos是静态方法 要带上类名.GetCursorPos()来调用完整的出错信息?

解决方案 »

  1.   

    internal struct POINTAPI
      {
       internal int x;
       internal int y;
      }
    [System.Runtime.InteropServices.DllImport( "user32.dll" , EntryPoint="GetCursorPos" )]
      internal extern static int GetCursorPos( ref POINTAPI lpPoint );
    调用时
    POINTAPI _POINTAPI = new POINTAPI();
    GetCursorPos(out lppoint);
    label1.Text = lppoint.x.ToString();
    label2.Text = lppoint.y.ToString();
      

  2.   

    上面的改一下:
    internal struct POINTAPI
      {
       internal int x;
       internal int y;
      }
    [System.Runtime.InteropServices.DllImport( "user32.dll" , EntryPoint="GetCursorPos" )]
      internal extern static int GetCursorPos( ref POINTAPI lpPoint );
    调用时
    POINTAPI _POINTAPI = new POINTAPI();
    GetCursorPos(ref lppoint);
    label1.Text = lppoint.x.ToString();
    label2.Text = lppoint.y.ToString();这样可以,或者用:internal struct POINTAPI
      {
       internal int x;
       internal int y;
      }
    [System.Runtime.InteropServices.DllImport( "user32.dll" , EntryPoint="GetCursorPos" )]
      internal extern static int GetCursorPos( out POINTAPI lpPoint );
    调用时
    POINTAPI _POINTAPI = new POINTAPI();
    GetCursorPos(out lppoint);
    label1.Text = lppoint.x.ToString();
    label2.Text = lppoint.y.ToString();
      

  3.   

    类型要匹配,如果用 class POINT ,就要这样:[DllImport("user32.dll")]
    static extern bool GetCursorPos(POINT lpPoint);
    调用时直接:GetCursorPos(lppoint);struct 类型就要:
    [System.Runtime.InteropServices.DllImport( "user32.dll" , EntryPoint="GetCursorPos" )]
    internal extern static int GetCursorPos( out POINTAPI lpPoint );
    调用时: GetCursorPos(out lppoint);
    如果[System.Runtime.InteropServices.DllImport( "user32.dll" , EntryPoint="GetCursorPos" )]
    internal extern static int GetCursorPos( ref POINTAPI lpPoint );
    调用时: GetCursorPos(ref lppoint);
      

  4.   

    POINT lppoint;
    GetCursorPos(out lppoint);
    label1.Text = lppoint.x.ToString();
    label2.Text = lppoint.y.ToString();