c#下導入使用微軟的sendmessage接口函數(api)

第一,using System.Runtime.InteropServices;

第二,   public struct CLineAndTheta
        {
            //public int x;
            //public int y;
            public PointF startPt;
            public PointF endPt;
            public double theta;
        };

第三,   [DllImport("User32.dll", EntryPoint = "SendMessage"),]
        private static extern int SendMsg(int hwnd, int msg, int wparms, ref CLineAndTheta lparm);

第四,   public const int WM_FIXDATA = 0x0A4AB;

第五, SendMsg(windowHandler, WM_FIXDATA, 0, ref testfix.Fix_LT);

 

相似的還有:

  public struct CopyDataStruct
        {
            public IntPtr dwData;
            public int cbData;
            //  [MarshalAs(UnmanagedType.LPStr)]
            public byte[] lpData;
            public Bitmap tempbmp;
        }

  [DllImport("User32.dll", EntryPoint = "SendMessage"),]
        private static extern int SendMsg(int hwnd, int msg, int wparms, ref CopyDataStruct lparm);

    public const int WM_COPYDATA = 0x04AA;

  SendMsg(windowHandler, WM_COPYDATA, 0, ref cds);

////////////////////////////////////////////////////////////

再如:

   [DllImport("User32.dll", EntryPoint = "FindWindow")]
        private static extern int FindWindow(string lpClassName, string lpWindowName);

  int windowHandler = FindWindow(null, "TestMegaugingLib");

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章