设备识别与驱动安装源码

  • 格式:docx
  • 大小:166.93 KB
  • 文档页数:104

using System;

using System.Collections.Generic;

using System.Text;

namespace DriverDetchor

{

///

/// 设备类型

///

publicenumDriverType

{

iPhone,

Android,

Oms,

M8,

Wm,

Nokia,

AndroidNoAdb,

AndroidComposite,

None,

}

///

/// 设备信息

///

publicclassDeviceInfo

{

#region - private fields -

privatestring m_deviceType;

privatestring m_hardwareId;

privatestring m_driverGuid;

privatebool m_installDriver;

privatestring m_serialNo;

privatestring m_locationInformation;

privatestring m_deviceDesc;

privatestring m_InstanceId;

privatestring m_CompositeId;

privatestring m_AttachedTo;

privatestring m_driverUrl;

#endregion

public DeviceInfo(string deviceType, string hardwareId, string driverGuid)

: this(deviceType, hardwareId, driverGuid, string.Empty, string.Empty)

{

}

public DeviceInfo(string deviceType, string hardwareId, string driverGuid, string attachedTo)

: this(deviceType, hardwareId, driverGuid, attachedTo, string.Empty)

{

}

public DeviceInfo(string deviceType, string hardwareId, string driverGuid, string attachedTo, string

compositeId) {

m_deviceType = deviceType;

m_hardwareId = hardwareId;

m_driverGuid = driverGuid;

m_installDriver = false;

m_CompositeId = compositeId;

m_AttachedTo = attachedTo;

}

///

/// 设备id

///

publicstring CompositeId

{

get

{

return m_CompositeId;

}

set

{

m_CompositeId = value;

}

}

///

/// 设备id

///

publicstring HardwareId

{

get

{

return m_hardwareId;

}

}

///

/// 设备guid

///

publicstring DriverGuid

{

get

{

return m_driverGuid;

}

set

{

m_driverGuid = value;

}

}

///

/// 设备类型

///

publicstring DeviceType {

get

{

return m_deviceType;

}

}

///

/// 是否安装驱动

///

publicbool IsInstallDriver

{

get

{

return m_installDriver;

}

set

{

m_installDriver = value;

}

}

///

/// 设备序列号

///

publicstring SerialNo

{

get

{

return m_serialNo;

}

set

{

m_serialNo = value;

}

}

///

/// 本地信息

///

publicstring LocationInformation

{

get

{

return m_locationInformation;

}

set

{

m_locationInformation = value;

}

}

///

/// 驱动下载url

/// publicstring DriverUrl

{

get

{

return m_driverUrl;

}

set

{

m_driverUrl = value;

}

}

///

/// 设备描述

///

publicstring DeviceDesc

{

get

{

return m_deviceDesc;

}

set

{

m_deviceDesc = value;

}

}

///

/// 设备本地信息

///

publicstring InstanceId

{

get

{

return m_InstanceId;

}

set

{

m_InstanceId = value;

}

}

///

/// 设备使用串口号

///

publicstring AttachedTo

{

get

{

return m_AttachedTo;

}

}

}

///

/// 手机设备信息

///

publicclassDriverInfo

{

#region - private fields -

privateDriverType m_driverType;

privatestring m_exePath;

privatestring m_driverGuid;

privateList m_DeviceInfos;

privateDeviceInfo m_currentDevice;

#endregion

public DriverInfo(DriverType driverType, string driverGuid, string exePath)

{

m_driverType = driverType;

m_driverGuid = driverGuid;

m_exePath = exePath;

m_DeviceInfos = newList();

}

//添加设备信息

publicDeviceInfo AddDeviceInfo(string deviceType, string hardwareId, string driverGuid)

{

DeviceInfo dinfo = newDeviceInfo(deviceType, hardwareId, driverGuid);

m_DeviceInfos.Add(dinfo);

return dinfo;

}

//添加设备信息

publicDeviceInfo AddDeviceInfo(string deviceType, string hardwareId, string driverGuid, string

compositeId)

{

DeviceInfo dinfo = newDeviceInfo(deviceType, hardwareId, driverGuid, string.Empty, compositeId);

m_DeviceInfos.Add(dinfo);

return dinfo;

}

publicvoid AddDeviceInfo(DeviceInfo deinfo)

{

m_DeviceInfos.Add(deinfo);

}

#region - public properties -

///

/// 设备类型

///

publicDriverType DriverType

{

get