/// <summary> /// 根据类型获取对应的设备信息 /// </summary> /// <param name="idev"></param> private void CreateDeviceByType(DeviceExtractionAdorner idev) { switch (idev.Device.DeviceType) { case EnumDeviceType.None: break; case EnumDeviceType.Phone: CurDevModel = GetPhoneDevice(idev); break; case EnumDeviceType.Chip: break; case EnumDeviceType.Disk: CurDevModel = GetLocalFileDevice(idev); break; case EnumDeviceType.SDCard: CurDevModel = GetMemoryCardDevice(idev); break; case EnumDeviceType.SIM: break; } }
/// <summary> /// 创建一个设备,如果设备已经存在,则跳转到该设备 /// </summary> /// <param name="device"></param> private void CreateDevice(IDevice device) { if (device.DeviceType == EnumDeviceType.None) { return; } DeviceExtractionAdorner dea = new DeviceExtractionAdorner(); var ca = SystemContext.Instance.CurrentCase; var dev = ca.DeviceExtractions.FirstOrDefault(d => d[DeviceExternsion.XLY_IdKey] == device.ID); if (dev == null) //不存在则创建新设备 { dev = SystemContext.Instance.CurrentCase.CreateDeviceExtraction(device.Name, device.DeviceType.ToString()); dea.Target = dev; dea.Device = device; dea.Save(); } else { dea.Target = dev; } //跳转到设备 MessageAggregation.SendGeneralMsg(new GeneralArgs <DeviceExtractionAdorner>(ExportKeys.DeviceAddedMsg) { Parameters = dea }); }
private DeviceModel GetMemoryCardDevice(DeviceExtractionAdorner idev) { var sdCDev = idev.Device as XLY.SF.Project.Domains.SDCardDevice; DeviceModel targetDev = new MemoryCardDevModel() { Name = idev.Name, MemoryCardTypeName = "", Number = sdCDev.DiskNumber.ToString(), DeviceExtractionAdorner = idev, IDevSource = idev.Device }; return(targetDev); }
private DeviceModel GetLocalFileDevice(DeviceExtractionAdorner idev) { var lfDev = idev.Device as XLY.SF.Project.Domains.LocalFileDevice; DeviceModel targetDev = new LocalFileDevModel() { Name = idev.Name, FilePath = lfDev.PathName, FileTypeName = "默认类型", DeviceExtractionAdorner = idev, IDevSource = idev.Device }; return(targetDev); }
private DeviceModel GetPhoneDevice(DeviceExtractionAdorner idev) { var tmpDev = idev.Device as XLY.SF.Project.Domains.Device; DeviceModel targetDev = new PhoneDevModel() { Name = idev.Name, DevModel = tmpDev.Model, IMEI = tmpDev.IMEI, IsRoot = tmpDev.IsRoot, SerialNumber = tmpDev.SerialNumber, System = string.Format("{0}{1}", tmpDev.OSType, tmpDev.OSVersion), IsAndroid = tmpDev.OSType == EnumOSType.Android, DeviceTotalSize = tmpDev.TotalDiskCapacity * 1.0 / 1024 / 1024 / 1024, UnusedTotalSizeOfDevice = tmpDev.TotalDiskAvailable * 1.0 / 1024 / 1024 / 1024, SDCardTotalSize = tmpDev.TotalDataCapacity * 1.0 / 1024 / 1024 / 1024, UnusedTotalSizeOfSD = tmpDev.TotalDataAvailable * 1.0 / 1024 / 1024 / 1024, DeviceExtractionAdorner = idev, IDevSource = idev.Device }; return(targetDev); }