コード例 #1
0
            public static SYSTEM_POWER_STATUS_EX GetBatteryBasic()
            {
                //application crashes everytime when sending "out SYSTEM_POWER_STATUS_EX", so then we do the CString way. Allways work.

                string str = "";
                var    val = DllImportCaller.lib.GetSystemPowerStatusEx7(ref str, true) > 0; //1

                if (val)
                {
                    SYSTEM_POWER_STATUS_EX powerStatus = new SYSTEM_POWER_STATUS_EX();

                    var s = str.Split('\n');
                    powerStatus.ACLineStatus              = byte.Parse(s[0]);
                    powerStatus.BackupBatteryFlag         = byte.Parse(s[1]);
                    powerStatus.BackupBatteryFullLifeTime = uint.Parse(s[2]);
                    powerStatus.BackupBatteryLifePercent  = byte.Parse(s[3]);
                    powerStatus.BackupBatteryLifeTime     = uint.Parse(s[4]);
                    powerStatus.BatteryFlag         = byte.Parse(s[5]);
                    powerStatus.BatteryFullLifeTime = uint.Parse(s[6]);
                    powerStatus.BatteryLifePercent  = byte.Parse(s[7]);
                    powerStatus.BatteryLifeTime     = uint.Parse(s[8]);

                    powerStatus.Reserved1 = byte.Parse(s[9]);
                    powerStatus.Reserved2 = byte.Parse(s[10]);
                    powerStatus.Reserved3 = byte.Parse(s[11]);

                    return(powerStatus);
                }
                return(default(SYSTEM_POWER_STATUS_EX));
            }
コード例 #2
0
        public static SYSTEM_POWER_STATUS_EX GetPowerInfo(RAPI rapi)
        {
            SYSTEM_POWER_STATUS_EX status = new SYSTEM_POWER_STATUS_EX();

            rapi.GetDeviceSystemPowerStatus(out status);

            return(status);
        }
コード例 #3
0
ファイル: Kernel32.cs プロジェクト: huipengly/WGestures
        /// <summary>
        /// Wrapper over GetSystemPowerStatusEx
        /// </summary>
        /// <returns></returns>
        public static int GetBatteryLifePercent()
        {
            SYSTEM_POWER_STATUS_EX status = new SYSTEM_POWER_STATUS_EX();

            byte percent = 0;
            if (GetSystemPowerStatusEx(status, false) == 1)
            {
                percent = status.BatteryLifePercent;
            }
            return percent;
        }
コード例 #4
0
ファイル: Global.cs プロジェクト: tatar1nro/KKM_Trash
        public static string getBattary()
        {
            SYSTEM_POWER_STATUS_EX status = new SYSTEM_POWER_STATUS_EX();
            SYSTEM_POWER_STATUS_EX2 status2 = new SYSTEM_POWER_STATUS_EX2();

            if (GetSystemPowerStatusEx(status, false) == 1)
            {
                return String.Format("({0})%", status.BatteryLifePercent);
            }
            else return "";
        }
コード例 #5
0
        public uint GetMainBatteryChargePercent()
        {
            SYSTEM_POWER_STATUS_EX status = new SYSTEM_POWER_STATUS_EX();

            if (GetSystemPowerStatusEx(status, false) == 1)
            {
                return(status.BatteryLifePercent);
            }

            return(0);
        }
コード例 #6
0
ファイル: Kernel32.cs プロジェクト: zznjobs/WGestures
        /// <summary>
        /// Wrapper over GetSystemPowerStatusEx
        /// </summary>
        /// <returns></returns>
        public static int GetBatteryLifePercent()
        {
            SYSTEM_POWER_STATUS_EX status = new SYSTEM_POWER_STATUS_EX();

            byte percent = 0;

            if (GetSystemPowerStatusEx(status, false) == 1)
            {
                percent = status.BatteryLifePercent;
            }
            return(percent);
        }
コード例 #7
0
        void BatteryCheck(object state)
        {
            SYSTEM_POWER_STATUS_EX status = new SYSTEM_POWER_STATUS_EX();

            if (GetSystemPowerStatusEx(status, true))
            {
                if (status.ACLineStatus != oldStatus)
                {
                    OnPowerMessage("power source: " + status.ACLineStatus.ToString(), status.ACLineStatus == ACLineStatus.AC_LINE_ONLINE ? true : false);
                    oldStatus = status.ACLineStatus;
                }
            }
        }
コード例 #8
0
        public uint GetBackupBatteryChargePercent()
        {
            SYSTEM_POWER_STATUS_EX status = new SYSTEM_POWER_STATUS_EX();

            if (GetSystemPowerStatusEx(status, false) == 1)
            {
                uint backupBatteryPercent = status.BackupBatteryLifePercent;

                return(status.BackupBatteryLifePercent);                // careful. returns 255 if no backup battery
            }

            return(0);
        }
コード例 #9
0
ファイル: Common.cs プロジェクト: xlgwr/RFID
        //***********************************************************************
        //Process   Name : GetPowerState
        //Introduce   : 获取电池容量处理/
        //Parameter   :
        //Return    Value:
        //Creat     Date : 2011/08/01 xuxiaohu
        //pdate    Date :
        //Memo      :
        //***********************************************************************
        public static Bitmap GetPowerState()
        {
            Bitmap w_Bitmap = Resources.Default_BatteryLowBG;

            try
            {
                SYSTEM_POWER_STATUS_EX status = new SYSTEM_POWER_STATUS_EX();
                if (GetSystemPowerStatusEx(status, false) == 1)
                {
                    //0 and 100
                    if (status.BatteryLifePercent >= 80)
                    {
                        //电量:80%以上
                        w_Bitmap = Resources.Default_Battery80;
                    }
                    else if (status.BatteryLifePercent >= 60 && status.BatteryLifePercent < 80)
                    {
                        //电量:60%以上
                        w_Bitmap = Resources.Default_Battery60;
                    }
                    else if (status.BatteryLifePercent >= 40 && status.BatteryLifePercent < 60)
                    {
                        //电量:40%以上
                        w_Bitmap = Resources.Default_Battery40;
                    }
                    else if (status.BatteryLifePercent < 40)
                    {
                        //电量低:40以下
                        w_Bitmap = Resources.Default_BatteryLowBG;
                    }
                }
            }
            catch (Exception)
            {
                throw;
            }

            return(w_Bitmap);
        }
コード例 #10
0
        public static void Refresh()
        {
            SYSTEM_POWER_STATUS_EX sps = new SYSTEM_POWER_STATUS_EX();
            bool bRet = GetSystemPowerStatusEx(ref sps);

            if (!bRet)
            {
                return;
            }
            _ACLineStatus =
                (enACLineStatus)
                sps.ACLineStatus;
            _BatteryFlag =
                (enBatteryFlag)
                sps.BatteryFlag;
            _BatteryLifePercent =
                sps.BatteryLifePercent;
            _Reserved1 =
                sps.Reserved1;
            _BatteryLifeTime =
                sps.BatteryLifeTime;
            _BatteryFullLifeTime =
                sps.BatteryFullLifeTime;
            _Reserved2 =
                sps.Reserved2;
            _BackupBatteryFlag =
                (enBatteryFlag)
                sps.BackupBatteryFlag;
            _BackupBatteryLifePercent =
                sps.BackupBatteryLifePercent;
            _Reserved3 =
                sps.Reserved3;
            _BackupBatteryLifeTime =
                sps.BackupBatteryLifeTime;
            _BackupBatteryFullLifeTime =
                sps.BackupBatteryFullLifeTime;
        }
コード例 #11
0
 static extern bool GetSystemPowerStatusEx(SYSTEM_POWER_STATUS_EX pStatus, bool fUpdate);
コード例 #12
0
ファイル: Common.cs プロジェクト: xlgwr/RFID
        //***********************************************************************
        //Process   Name : GetPowerState
        //Introduce   : 获取电池容量处理/
        //Parameter   :
        //Return    Value:
        //Creat     Date : 2011/08/01 xuxiaohu
        //pdate    Date :
        //Memo      :
        //***********************************************************************
        public static Bitmap GetPowerState()
        {
            Bitmap w_Bitmap = Resources.Default_BatteryLowBG;

            try
            {

            SYSTEM_POWER_STATUS_EX status = new SYSTEM_POWER_STATUS_EX();
            if (GetSystemPowerStatusEx(status, false) == 1)
            {

                //0 and 100
                if (status.BatteryLifePercent >= 80 )
                {
                    //电量:80%以上
                    w_Bitmap = Resources.Default_Battery80 ;
                }
                else if (status.BatteryLifePercent >= 60 && status.BatteryLifePercent < 80)
                {
                    //电量:60%以上
                    w_Bitmap = Resources.Default_Battery60;
                }
                else if (status.BatteryLifePercent >= 40 && status.BatteryLifePercent < 60)
                {
                     //电量:40%以上
                    w_Bitmap = Resources.Default_Battery40 ;
                }
                   else if (status.BatteryLifePercent < 40)
                {
                    //电量低:40以下
                    w_Bitmap = Resources.Default_BatteryLowBG;
                }
            }
            }
            catch (Exception)
            {
            throw;
            }

            return w_Bitmap;
        }
コード例 #13
0
ファイル: PowerStatus.cs プロジェクト: jithuin/infogeezer
		public static extern uint GetSystemPowerStatusEx(SYSTEM_POWER_STATUS_EX lpSystemPowerStatus, bool fUpdate);
コード例 #14
0
            public static SYSTEM_POWER_STATUS_EX GetBatteryBasic()
            {
                //application crashes everytime when sending "out SYSTEM_POWER_STATUS_EX", so then we do the CString way. Allways work.

                string str = "";
                var val = DllImportCaller.lib.GetSystemPowerStatusEx7(ref str, true) > 0; //1

                if (val)
                {
                    SYSTEM_POWER_STATUS_EX powerStatus = new SYSTEM_POWER_STATUS_EX();

                    var s = str.Split('\n');
                    powerStatus.ACLineStatus = byte.Parse(s[0]);
                    powerStatus.BackupBatteryFlag = byte.Parse(s[1]);
                    powerStatus.BackupBatteryFullLifeTime = uint.Parse(s[2]);
                    powerStatus.BackupBatteryLifePercent = byte.Parse(s[3]);
                    powerStatus.BackupBatteryLifeTime = uint.Parse(s[4]);
                    powerStatus.BatteryFlag = byte.Parse(s[5]);
                    powerStatus.BatteryFullLifeTime = uint.Parse(s[6]);
                    powerStatus.BatteryLifePercent = byte.Parse(s[7]);
                    powerStatus.BatteryLifeTime = uint.Parse(s[8]);

                    powerStatus.Reserved1 = byte.Parse(s[9]);
                    powerStatus.Reserved2 = byte.Parse(s[10]);
                    powerStatus.Reserved3 = byte.Parse(s[11]);

                    return powerStatus;
                }
                return default(SYSTEM_POWER_STATUS_EX);
            }
コード例 #15
0
		public uint GetMainBatteryChargePercent()
		{
			SYSTEM_POWER_STATUS_EX status = new SYSTEM_POWER_STATUS_EX();

			if(GetSystemPowerStatusEx(status, false) == 1)
			{
				return status.BatteryLifePercent;
			}

			return 0;
		}
コード例 #16
0
        //Непосредственно - Функция получения информациии о заряде батареек.
        //Буду использовать старубю функцию.
        public string ReportPowerStatus(string what)
        {
            string result = "";
            try
            {
                string status = string.Empty;

                SYSTEM_POWER_STATUS_EX powerStatus;
                powerStatus = new SYSTEM_POWER_STATUS_EX();

                GetSystemPowerStatusEx(powerStatus, true);

                string battery1 = powerStatus.BatteryLifePercent.ToString();

                string battery2 = powerStatus.BackupBatteryLifePercent.ToString();

                //Если передан параметр main - то основная батарея иначе backup батарея.
                if (what == "main")
                {
                    result = battery1;
                }
                else
                {
                    result = battery2;
                }

            }
            catch
            {

            }
            return result;
        }
コード例 #17
0
 public static extern int CeGetSystemPowerStatusEx(ref SYSTEM_POWER_STATUS_EX pstatus, int fUpdate);
コード例 #18
0
		public uint GetBackupBatteryChargePercent()
		{
			SYSTEM_POWER_STATUS_EX status = new SYSTEM_POWER_STATUS_EX();

			if (GetSystemPowerStatusEx(status, false) == 1)
			{
				uint backupBatteryPercent = status.BackupBatteryLifePercent;

				return status.BackupBatteryLifePercent; // careful. returns 255 if no backup battery
			}

			return 0;
		}
コード例 #19
0
ファイル: Form1.cs プロジェクト: yifeidong/NewAutoUpdate
        /// <summary>
        /// 初始化
        /// </summary>
        private void init()
        {
            //ShowWindow(this.Handle, SW_SHOW);
            //SetForegroundWindow(this.Handle);
            //SetWindowPos(this.Handle, -1, 0, 0, 0, 0, 1 | 2);

            //m_socketClient = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            status                    = new SYSTEM_POWER_STATUS_EX();
            quitFlag                  = 0;
            _outStr                   = "";
            _codeStr                  = "";
            _applicationName          = "AutoUpdate";
            _pFlag                    = 98;
            _applicationCount         = 0;
            tabControl1.SelectedIndex = tabControl1.TabPages.IndexOf(main);
            _nowControlModule         = main_focus;
            try
            {
                _IpAddress = WifiCtrl.GetInstance().GetWifiStatus().CurrentIpAddress.ToString();
                if (_IpAddress == "0.0.0.0")
                {
                    _IpAddress = IPHelper.GetIpAddress();
                }
            }
            catch
            {
                _IpAddress = IPHelper.GetIpAddress();
            }
            main_focus.Focus();
            //Disconnect();
            //Connect();
            listView1.Items.Clear();
            XmlDocument xml = new XmlDocument();

            try
            {
                //openFileDialog1.ShowDialog();
                //string path = openFileDialog1.FileName;
                xml.Load("\\Program Files\\CONFIG.XML");
                //XmlNode Setting = xml.SelectSingleNode("Root/System");
                _serverIP   = xml.SelectSingleNode("Root/System/server_ip").InnerText;
                _serverPort = int.Parse(xml.SelectSingleNode("Root/System/server_port").InnerText);
                _stockNo    = xml.SelectSingleNode("/Root/System/stock_no").InnerText;
                XmlNodeList Application = xml.SelectSingleNode("Root/Applications").ChildNodes;
                foreach (XmlNode app in Application)
                {
                    //MessageBox.Show(app.SelectSingleNode("name").InnerText,"app");
                    AddListviewItem(app.SelectSingleNode("name").InnerText, app.Name, app.SelectSingleNode("version").InnerText
                                    , app.SelectSingleNode("wince_path").InnerText, app.SelectSingleNode("pc_path").InnerText);
                }
            }
            catch
            {
                //MessageBox.Show(ee.Message, "错误");
                UpdateConfig();
            }
            //HideTaskBar();
            //Connect();
            ShowPower();
            label4.Text = "IP地址:" + _IpAddress;
        }
コード例 #20
0
 public static extern uint GetSystemPowerStatusEx(SYSTEM_POWER_STATUS_EX lpSystemPowerStatus, bool fUpdate);
コード例 #21
0
 extern static private bool GetSystemPowerStatusEx(ref SYSTEM_POWER_STATUS_EX sps);
コード例 #22
0
 private static extern uint GetSystemPowerStatusEx(out SYSTEM_POWER_STATUS_EX lpSystemPowerStatus,
                                                   bool fUpdate);
コード例 #23
0
ファイル: frmBatteryInfo.cs プロジェクト: fido2478/engcon
 private static extern uint GetSystemPowerStatusEx(out SYSTEM_POWER_STATUS_EX lpSystemPowerStatus,
     bool fUpdate);