Beispiel #1
0
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失败")
Beispiel #2
0
def restart_device(sed=0):
    '''
    重启设备
    sed:延时启动时间
    '''
    if sed > 0:
        msdk.Disconnect(sed)
    else:
        msdk.Restart()
    log.log_info('重启设备!')
Beispiel #3
0
def check_device():
    '''
    设备检查
    '''
    if msdk.CheckDevice() == 1:
        log.log_info('设备已连接!')
        return True
    else:
        log.log_info('设备未连接!')
        return False
Beispiel #4
0
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()
Beispiel #5
0
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
Beispiel #6
0
def close_device():
    '''
    关闭设备
    '''
    msdk.CloseDevice()
    log.log_info('关闭设备!')