Amjad Moustafa
أهلا وسهلا......
أنت غير مسجل لدينا كعضو في المنتدى ومع ذلك يمكنك إضافة المواضيع لإغناء النتدى

انضم إلى المنتدى ، فالأمر سريع وسهل

Amjad Moustafa
أهلا وسهلا......
أنت غير مسجل لدينا كعضو في المنتدى ومع ذلك يمكنك إضافة المواضيع لإغناء النتدى
Amjad Moustafa
هل تريد التفاعل مع هذه المساهمة؟ كل ما عليك هو إنشاء حساب جديد ببضع خطوات أو تسجيل الدخول للمتابعة.

Battery_Module

اذهب الى الأسفل

Battery_Module Empty Battery_Module

مُساهمة  Amjad الجمعة 30 يناير 2015, 1:58 am


Private Type SYSTEM_POWER_STATUS
ACLineStatus As Byte
BatteryFlag As Byte
BatteryLifePercent As Byte
Reserved1 As Byte
BatteryLifeTime As Long
BatteryFullLifeTime As Long
End Type
Private Declare Function GetSystemPowerStatus Lib "kernel32" (lpSystemPowerStatus As SYSTEM_POWER_STATUS) As Long

Function Adapter_State() As String
Dim SPS As SYSTEM_POWER_STATUS
'get the battery powerstatus
GetSystemPowerStatus SPS
'
Select Case SPS.ACLineStatus
Case 0
Adapter_State2 = "Adapter Offline"
Case 1
Adapter_State2 = "Adapter Online"
Case 2
Adapter_State2 = "Unknown Adapter State "
End Select
End Function

Function Battery_State() As String
Dim SPS As SYSTEM_POWER_STATUS
'get the battery powerstatus
GetSystemPowerStatus SPS
'
Select Case SPS.BatteryFlag
Case 1
Battery_State2 = "High Battery"
Case 2
Battery_State2 = "Low Battery"
Case 4
Battery_State2 = "Very Low Battery"
Case 8
Battery_State2 = "Charging"
Case 9
Battery_State2 = "Charging"
Case 128
Battery_State2 = "No Battery"
Case 255
Battery_State2 = "Unknown Battery State"
End Select
If SPS.BatteryFlag > 9 And SPS.BatteryFlag < 128 Then Battery_State2 = "Charging"
'Battery_State = SPS.BatteryFlag
End Function

Function Battery_Percent() As String
Dim SPS As SYSTEM_POWER_STATUS
'get the battery powerstatus
GetSystemPowerStatus SPS
'
Battery_Percent = SPS.BatteryLifePercent

End Function

Function Battery_Life() As String
Dim SPS As SYSTEM_POWER_STATUS
'get the battery powerstatus
GetSystemPowerStatus SPS
'
Battery_Life = SPS.BatteryLifeTime \ 3600 & " hour " & Round((SPS.BatteryLifeTime / 3600 - SPS.BatteryLifeTime \ 3600) * 60, 0) & " minute"
End Function


Amjad
Admin

عدد المساهمات : 71
تاريخ التسجيل : 07/11/2011

https://amjad-moustafa.rigala.net

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى