def set_device_id(vender_id, product_id): ''' 修改设备ID(65535) ''' if msdk.SetDeviceID("", vender_id, product_id) == 1: log.log_info("修改设备ID成功!") restart_device() else: log.log_error("修改设备ID失败")
def restart_device(sed=0): ''' 重启设备 sed:延时启动时间 ''' if sed > 0: msdk.Disconnect(sed) else: msdk.Restart() log.log_info('重启设备!')
def check_device(): ''' 设备检查 ''' if msdk.CheckDevice() == 1: log.log_info('设备已连接!') return True else: log.log_info('设备未连接!') return False
def open_device(vender_id=0, product_id=0): ''' 打开设备 vender_id:设备的厂商ID product_id:产品ID ''' if check_device(): return True if vender_id != 0 or product_id != 0: if msdk.OpenDeviceEx(vender_id, product_id) == 1: log.log_info('打开指定ID设备成功!') else: log.log_error("打开指定ID设备失败!") return -1 else: if msdk.OpenDevice() == 1: log.log_info('打开设备成功!') else: log.log_error('打开设备失败!') return -1 return check_device()
def exe_start(name, full_path, cnts=3): ''' 启动应用程序 ''' hwnd = 0 # 启动前信息确认 if not exe_check(name, full_path): return hwnd cnt = 1 # 启动次数 while hwnd == 0 and cnt <= cnts: log.log_info('第{cnt}次尝试启动…'.format_map(vars())) # 启动应用程序 hwnd = start_try(name, full_path) if hwnd: log.log_info('第{cnt}次尝试启动成功({hwnd})!'.format_map(vars())) else: log.log_warn('第{cnt}次尝试启动失败!'.format_map(vars())) cnt += 1 # 启动成功判断 if not hwnd: log.log_error('应用程序{full_path}启动失败!'.format_map(vars())) return hwnd
def close_device(): ''' 关闭设备 ''' msdk.CloseDevice() log.log_info('关闭设备!')