/// <summary> /// 构造函数,默认做前台绑定 /// </summary> /// <param name="hwnd">句柄</param> public Window(int hwnd, BindingInfo mode = null) { if (mode == null) { mode = BindingInfo.DefaultForeground; } if (IsWindow(hwnd) == false) throw new InvalidHandleException(hwnd); this.Hwnd = hwnd; BindingDmsoft(mode); }
public bool BindingDmsoft(BindingInfo info) { //将默认的dm对象替换成新建的dm对象new dmsoft(); return BindingDmsoft(new dmsoft(), info); }
/// <summary> /// 为窗口绑定独立的dm对象,没有为窗口对象绑定dm的话,窗口中调用键鼠和图像识别将是对整个屏幕操作。 /// 如果绑定的句柄为0或-1,直接抛错。 /// </summary> /// <param name="dm"></param> /// <param name="info"></param> /// <returns></returns> public bool BindingDmsoft(dmsoft dm, BindingInfo info) { this.dm = dm; if (Hwnd <= 0) throw new InvalidHandleException(Hwnd); int result = dm.BindWindow(this.Hwnd, info.Display.ToString(), info.Mouse.ToString(), info.Keyboard.ToString(), (int)info.Mode); IsBinding = result == 1 ? true : false; return IsBinding; }