コード例 #1
0
        private void Window_Initialized(object sender, EventArgs e)
        {
            IntPtr hWnd = new WindowInteropHelper(this).Handle;



            SetWindowPos(hWnd, HWND_BOTTOM, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE | SWP_NOACTIVATE);

            IntPtr     windowHandle = (new WindowInteropHelper(this)).Handle;
            HwndSource src          = HwndSource.FromHwnd(windowHandle);

            src.AddHook(new HwndSourceHook(WndProc));


            this.hwW = new HWiNFOWrapper();
            this.sensorElementsDataArray = hwW.GetSensorData();
            this.DriveDataList           = DriveInfo.GetDrives();

            #region TEST MODE
            // DEBUG PURPOSES ONLY
            if (TEST_MODE)
            {
                if (!System.IO.File.Exists(@"C:\Users\Kama3\Documents\Visual Studio 2013\Projects\GodlikeWidgets\GodlikeWidgets\test2.txt"))
                {
                    System.IO.File.Create(@"C:\Users\Kama3\Documents\Visual Studio 2013\Projects\GodlikeWidgets\GodlikeWidgets\test2.txt");
                }

                FileStream   fs = File.Open(@"C:\Users\Kama3\Documents\Visual Studio 2013\Projects\GodlikeWidgets\GodlikeWidgets\test2.txt", FileMode.Truncate, FileAccess.Write);
                StreamWriter sw = new StreamWriter(fs);

                foreach (Struct_SensorElement sensorElement in sensorElementsDataArray)
                {
                    sw.WriteLine(String.Format("Sensor Name: {0}", sensorElement.szName));
                    sw.WriteLine(String.Format("Sensor ID: {0}", sensorElement.dwSensorID));

                    foreach (Struct_SensorElementReader sensorReader in sensorElement.sensorReaders)
                    {
                        sw.WriteLine(String.Format("\tSensor Name: {0}", sensorReader.szName));
                        sw.WriteLine(String.Format("\tSensor Units: {0}", sensorReader.szUnit));
                        sw.WriteLine(String.Format("\tSensor Type: {0}", Enum.GetName(typeof(SENSOR_READING_TYPE), sensorReader.tReading)));
                        sw.WriteLine(String.Format("\tSensor Value: {0}", sensorReader.Value));
                        sw.Write("\n");
                    }

                    sw.Write("\n");
                }


                sw.Flush();
                fs.Flush();
                sw.Close();
                fs.Close();
            }
            #endregion

            // Initialize lists, just one time
            Database.CPU_CHART_VALUES     = new ObservableCollection <KeyValuePair <string, int> >();
            Database.NETWORK_CHART_VALUES = new ObservableCollection <KeyValuePair <string, int> >();
            this.processUsageList         = new Dictionary <string, int>();
            Database.DISKS = new ObservableCollection <Disk>();
            Database.GPUS  = new ObservableCollection <GPU>();


            // Test disk
            Disk disk_C = new Disk("C", CONFIG_DISK1_SENSOR_NAME);
            Disk disk_F = new Disk("F", CONFIG_DISK2_SENSOR_NAME);

            Database.DISKS.Add(disk_C);
            Database.DISKS.Add(disk_F);

            // Test GPU

            GPU gpu1 = new GPU(CONFIG_GPU1_SENSOR_NAME);
            GPU gpu2 = new GPU(CONFIG_GPU2_SENSOR_NAME);

            Database.GPUS.Add(gpu1);
            Database.GPUS.Add(gpu2);


            // Fil charts with zeroes
            for (int i = 0; i < CHARTS_NODES + 1; i++)
            {
                Database.CPU_CHART_VALUES.Add(new KeyValuePair <string, int>(i.ToString(), 0));
            }


            for (int i = 0; i < CHARTS_NODES + 1; i++)
            {
                Database.NETWORK_CHART_VALUES.Add(new KeyValuePair <string, int>(i.ToString(), 0));
            }

            // Start ReadData Thread
            t_oReadDataBackgroundWorker         = new BackgroundWorker();
            t_oReadDataBackgroundWorker.DoWork += new DoWorkEventHandler(Thread_ReadData);
            t_oReadDataBackgroundWorker.WorkerSupportsCancellation = true;
            t_oReadDataBackgroundWorker.WorkerReportsProgress      = false;
            t_oReadDataBackgroundWorker.RunWorkerAsync();

            // Start WriteData Thread
            t_oWriteDataBackgroundWorker         = new BackgroundWorker();
            t_oWriteDataBackgroundWorker.DoWork += new DoWorkEventHandler(Thread_WriteData);
            t_oWriteDataBackgroundWorker.WorkerSupportsCancellation = true;
            t_oWriteDataBackgroundWorker.WorkerReportsProgress      = false;
            t_oWriteDataBackgroundWorker.RunWorkerAsync();
        }
コード例 #2
0
        private void Window_Initialized(object sender, EventArgs e)
        {


            IntPtr hWnd = new WindowInteropHelper(this).Handle;


            
            SetWindowPos(hWnd, HWND_BOTTOM, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE | SWP_NOACTIVATE);

            IntPtr windowHandle = (new WindowInteropHelper(this)).Handle;
            HwndSource src = HwndSource.FromHwnd(windowHandle);
            src.AddHook(new HwndSourceHook(WndProc));


            this.hwW = new HWiNFOWrapper();
            this.sensorElementsDataArray = hwW.GetSensorData();
            this.DriveDataList = DriveInfo.GetDrives();

            #region TEST MODE
            // DEBUG PURPOSES ONLY
            if (TEST_MODE)
            {

                if (!System.IO.File.Exists(@"C:\Users\Kama3\Documents\Visual Studio 2013\Projects\GodlikeWidgets\GodlikeWidgets\test2.txt"))
                    System.IO.File.Create(@"C:\Users\Kama3\Documents\Visual Studio 2013\Projects\GodlikeWidgets\GodlikeWidgets\test2.txt");

                FileStream fs = File.Open(@"C:\Users\Kama3\Documents\Visual Studio 2013\Projects\GodlikeWidgets\GodlikeWidgets\test2.txt", FileMode.Truncate, FileAccess.Write);
                StreamWriter sw = new StreamWriter(fs);

                foreach (Struct_SensorElement sensorElement in sensorElementsDataArray)
                {
                    sw.WriteLine(String.Format("Sensor Name: {0}", sensorElement.szName));
                    sw.WriteLine(String.Format("Sensor ID: {0}", sensorElement.dwSensorID));

                    foreach (Struct_SensorElementReader sensorReader in sensorElement.sensorReaders)
                    {
                        sw.WriteLine(String.Format("\tSensor Name: {0}", sensorReader.szName));
                        sw.WriteLine(String.Format("\tSensor Units: {0}", sensorReader.szUnit));
                        sw.WriteLine(String.Format("\tSensor Type: {0}", Enum.GetName(typeof(SENSOR_READING_TYPE), sensorReader.tReading)));
                        sw.WriteLine(String.Format("\tSensor Value: {0}", sensorReader.Value));
                        sw.Write("\n");
                    }

                    sw.Write("\n");
                }


                sw.Flush();
                fs.Flush();
                sw.Close();
                fs.Close();
            }
            #endregion

            // Initialize lists, just one time
            Database.CPU_CHART_VALUES = new ObservableCollection<KeyValuePair<string, int>>();
            Database.NETWORK_CHART_VALUES = new ObservableCollection<KeyValuePair<string, int>>();
            this.processUsageList = new Dictionary<string, int>();
            Database.DISKS = new ObservableCollection<Disk>();
            Database.GPUS = new ObservableCollection<GPU>();


            // Test disk
            Disk disk_C = new Disk("C", CONFIG_DISK1_SENSOR_NAME);
            Disk disk_F = new Disk("F", CONFIG_DISK2_SENSOR_NAME);

            Database.DISKS.Add(disk_C);
            Database.DISKS.Add(disk_F);

            // Test GPU

            GPU gpu1 = new GPU(CONFIG_GPU1_SENSOR_NAME);
            GPU gpu2 = new GPU(CONFIG_GPU2_SENSOR_NAME);

            Database.GPUS.Add(gpu1);
            Database.GPUS.Add(gpu2);


            // Fil charts with zeroes
            for (int i = 0; i < CHARTS_NODES + 1; i++)
            {
                Database.CPU_CHART_VALUES.Add(new KeyValuePair<string, int>(i.ToString(), 0));
            }


            for (int i = 0; i < CHARTS_NODES+1; i++)
            {
                Database.NETWORK_CHART_VALUES.Add(new KeyValuePair<string, int>(i.ToString(), 0));
            }

            // Start ReadData Thread
            t_oReadDataBackgroundWorker = new BackgroundWorker();
            t_oReadDataBackgroundWorker.DoWork += new DoWorkEventHandler(Thread_ReadData);
            t_oReadDataBackgroundWorker.WorkerSupportsCancellation = true;
            t_oReadDataBackgroundWorker.WorkerReportsProgress = false;
            t_oReadDataBackgroundWorker.RunWorkerAsync();

            // Start WriteData Thread
            t_oWriteDataBackgroundWorker = new BackgroundWorker();
            t_oWriteDataBackgroundWorker.DoWork += new DoWorkEventHandler(Thread_WriteData);
            t_oWriteDataBackgroundWorker.WorkerSupportsCancellation = true;
            t_oWriteDataBackgroundWorker.WorkerReportsProgress = false;
            t_oWriteDataBackgroundWorker.RunWorkerAsync();

           
        }