第一,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");