Exemple #1
0
        /// <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
            });
        }
Exemple #3
0
        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);
        }
Exemple #4
0
        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);
        }
Exemple #5
0
        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);
        }