예제 #1
0
        internal void CaptureAssetInfo(List <string> output)
        {
            ManufacturerName = output[2];
            Model            = output[0];
            ComputerName     = output[1];
            SerialNumber     = output[3];
            var startIndex = ComputerName.Length - 8;

            Barcode = Convert.ToInt32(ComputerName.Substring(startIndex, 7));
        }
예제 #2
0
        public void GatherSystemData()
        {
            IniFile RegisterIniFile = new IniFile(RegisterIni);

            IsMaster = Convert.ToBoolean(RegisterIniFile.IniReadValue("Terminal", "IsMaster"));
            string  StoreIni     = RegisterIniFile.IniReadValue("INI", "Store").ToString().Replace(@"\", @"\\");
            IniFile StoreIniFile = new IniFile(StoreIni);

            RegisterCount = Convert.ToInt32(StoreIniFile.IniReadValue("System", "NumRegisters"));

            //Set variables available using Environment.
            OSVersion        = Environment.OSVersion.ToString();
            NumOfLogicalProc = Convert.ToInt32(Environment.ProcessorCount);
            ComputerName     = Environment.MachineName.ToString();

            //Read Build Date and Build Version from Registry
            BuildDate = Registry.GetValue(GameStopRegKey, "CREATED", null).ToString();
            BuildVer  = Registry.GetValue(GameStopRegKey, "BuildVersion", null).ToString();

            // Set POS related variables
            if (File.Exists(RetechEXE))
            {
                POSArch = "ReTech";
                FileVersionInfo myFileVersionInfo = FileVersionInfo.GetVersionInfo(RetechEXE);
                POSVer         = myFileVersionInfo.FileVersion.ToString();
                Terminal       = RegisterIniFile.IniReadValue("Terminal", "Num");
                PinPad         = "Verifone MX";
                ReceiptPrinter = "Epson Thermal";
            }
            else
            {
                POSArch = "IPOS";
                FileVersionInfo myFileVersionInfo = FileVersionInfo.GetVersionInfo(IPOSExe);
                POSVer   = myFileVersionInfo.ProductName.ToString();
                Terminal = RegisterIniFile.IniReadValue("Terminal", "Num");

                string PinPadType = RegisterIniFile.IniReadValue("DeviceType", "PinPad");
                switch (PinPadType)
                {
                case "0": { PinPad = "None"; break; }

                case "1": { PinPad = "Verifone"; break; }

                case "5": { PinPad = "Ingenico eN1000"; break; }

                case "6": { PinPad = "Ingenico i6550"; break; }

                case "8": { PinPad = "Verifone MX"; break; }

                default: { break; }
                }
                string ReceiptPrinterType = RegisterIniFile.IniReadValue("DeviceType", "ReceiptPrinter");
                switch (ReceiptPrinterType)
                {
                case "0": { ReceiptPrinter = "None"; break; }

                case "1": { ReceiptPrinter = "Epson Impact"; break; }

                case "2": { ReceiptPrinter = "Star Thermal"; break; }

                case "3": { ReceiptPrinter = "Epson Thermal"; break; }

                default: { break; }
                }
            }

            if (File.Exists(StoreServerExe))
            {
                FileVersionInfo myFileVersionInfo = FileVersionInfo.GetVersionInfo(StoreServerExe);
                StoreServerVer = myFileVersionInfo.FileVersion.ToString();

                Process [] pname = Process.GetProcessesByName("GameStop.Store.Server.Service.exe");
                if (pname.Length == 0)
                {
                    StoreServerStatus = false;
                }
                else
                {
                    StoreServerStatus = true;
                }
            }

            if (File.Exists(KioskExe))
            {
                FileVersionInfo myFileVersionInfo = FileVersionInfo.GetVersionInfo(KioskExe);
                KioskVer = myFileVersionInfo.FileVersion.ToString();
                Terminal = ComputerName.Substring(ComputerName.Length - 3);
            }

            //Set variables using WIM query
            try
            {
                ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2",
                                                                                 "SELECT * FROM Win32_ComputerSystem");

                foreach (ManagementObject queryObj in searcher.Get())
                {
                    BootupState = queryObj["BootupState"].ToString();
                    //Manufacturer = queryObj["Manufacturer"].ToString();
                    Model               = queryObj["Model"].ToString();
                    Workgroup           = queryObj["Domain"].ToString();
                    TotalPhysicalMemory = Convert.ToInt32(queryObj["TotalPhysicalMemory"].ToString().Remove((queryObj["TotalPhysicalMemory"].ToString().Length) - 3, 3));
                    PhysicalMemory      = (Double)TotalPhysicalMemory / 1073741;
                    TotalPhysicalMemory = Convert.ToInt32(Math.Round(PhysicalMemory));
                }
            }
            catch { }

            try
            {
                ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\CIMV2",
                                                                                 "Select IPAddress from Win32_NetworkAdapterConfiguration WHERE IPEnabled = 'True'");

                foreach (ManagementObject queryObj in searcher.Get())
                {
                    if (queryObj["IPAddress"] != null)
                    {
                        String[] arrIPAddress = (String[])(queryObj["IPAddress"]);
                        Array.Sort(arrIPAddress);
                        foreach (String arrValue in arrIPAddress)
                        {
                            if (!arrValue.Contains(":"))
                            {
                                if (IPAddress == null)
                                {
                                    IPAddress = arrValue.ToString();
                                }
                                else
                                {
                                    IPAddress = IPAddress + ";" + arrValue.ToString();
                                }
                            }
                        }
                    }
                }
            }
            catch { }

            try
            {
                ManagementObjectSearcher searcher =
                    new ManagementObjectSearcher("root\\CIMV2",
                                                 "SELECT * FROM Win32_BIOS");

                foreach (ManagementObject queryObj in searcher.Get())
                {
                    SerialNum = queryObj["SerialNumber"].ToString();
                    BIOSver   = queryObj["Name"].ToString();
                }
            }
            catch  { }

            try
            {
                ManagementObjectSearcher searcher =
                    new ManagementObjectSearcher("root\\CIMV2",
                                                 "SELECT * FROM Win32_OperatingSystem");

                foreach (ManagementObject queryObj in searcher.Get())
                {
                    InstalledDate = ManagementDateTimeConverter.ToDateTime(queryObj["InstallDate"].ToString());
                }
            }
            catch { }

            try
            {
                ManagementObjectSearcher searcher =
                    new ManagementObjectSearcher("root\\CIMV2",
                                                 "SELECT * FROM Win32_DiskDrive WHERE MediaType = 'Fixed hard disk media'");

                foreach (ManagementObject queryObj in searcher.Get())
                {
                    if (HDDModel == null)
                    {
                        HDDModel = queryObj["Model"].ToString();
                    }
                    else
                    {
                        HDDModel = HDDModel + ";" + queryObj["Model"].ToString();
                    }
                }
            }
            catch { }

            try
            {
                ManagementObjectSearcher searcher =
                    new ManagementObjectSearcher("root\\CIMV2",
                                                 "SELECT * FROM Win32_Processor");

                foreach (ManagementObject queryObj in searcher.Get())
                {
                    ProcName = queryObj["Name"].ToString();
                }
            }
            catch { }

            try
            {
                ManagementObjectSearcher searcher =
                    new ManagementObjectSearcher("root\\CIMV2",
                                                 "SELECT * FROM Win32_PhysicalMemory");

                foreach (ManagementObject queryObj in searcher.Get())
                {
                    MemoryModuleCount = MemoryModuleCount + 1;
                    if (MemoryPart == null)
                    {
                        MemoryPart = queryObj["PartNumber"].ToString();
                    }

                    if (MemoryPart != queryObj["PartNumber"].ToString())
                    {
                        MemoryPart = MemoryPart + ";" + queryObj["PartNumber"].ToString();
                    }

                    if (MemorySpeed == null)
                    {
                        MemorySpeed = queryObj["Speed"].ToString();
                    }
                    if (MemorySpeed != queryObj["Speed"].ToString())
                    {
                        MemorySpeed = MemorySpeed + ";" + queryObj["Speed"].ToString();
                    }
                }
            }
            catch { }
        }