Bueno aqui una función para obtener información acerca de el estado de la alimentación de corriente del sistema :D

Código: Seleccionar todo

Option Explicit

'---------------------------------------------------------------------------------------
' Función     : SystemPowerStatus
' Fecha       : 09/10/2010 2:34 AM
' Autor        : Skyweb07
' Email       : [email protected]
' Web        : http://www.skyweb-productions.org
' Própsito    : Recupera información sobre el estado de la alimentación del sistema.
'               El estado indica si el sistema está funcionando con corriente alterna
'               o corriente continua, si la batería está cargando, y la cantidad de vida
'               de la batería queda.
'
'---------------------------------------------------------------------------------------

Public Type SYSTEM_POWER_STATUS
        ACLineStatus As Byte
        BatteryFlag As Byte
        BatteryLifePercent As Byte
        Reserved1 As Byte
        BatteryLifeTime As Long
        BatteryFullLifeTime As Long
End Type

Public Declare Function GetSystemPowerStatus Lib "kernel32" (lpSystemPowerStatus As SYSTEM_POWER_STATUS) As Long

Public Function SystemPowerStatus() As String
    
    Dim SI      As SYSTEM_POWER_STATUS
 
    If GetSystemPowerStatus(SI) Then
        
        SystemPowerStatus = "Estado de conexión del cable : "
        
        Select Case SI.ACLineStatus
                
            Case 0:     SystemPowerStatus = SystemPowerStatus & "Desconectado." & vbCrLf
            Case 1:     SystemPowerStatus = SystemPowerStatus & "Conectado." & vbCrLf
            Case 255:   SystemPowerStatus = SystemPowerStatus & "Desconocido." & vbCrLf
                    
        End Select
        
        SystemPowerStatus = SystemPowerStatus & "Estado de la bateria : "
        
        Select Case SI.BatteryFlag
        
            Case 1:     SystemPowerStatus = SystemPowerStatus & "Capacidad Alta +60%" & vbCrLf
            Case 2:     SystemPowerStatus = SystemPowerStatus & "Capacidad Baja -33%" & vbCrLf
            Case 3:     SystemPowerStatus = SystemPowerStatus & "Capacidad Crítica -5%" & vbCrLf
            Case 8:     SystemPowerStatus = SystemPowerStatus & "Cargandose..." & vbCrLf
            Case 128:   SystemPowerStatus = SystemPowerStatus & "No presente." & vbCrLf
            Case 255:   SystemPowerStatus = SystemPowerStatus & "Desconocido." & vbCrLf

        End Select
        
        If SI.BatteryLifePercent <> 255 Then
            
            SystemPowerStatus = SystemPowerStatus & "Porciento de carga de la batería : " & SI.BatteryLifePercent & "%" & vbCrLf
            
        End If
        
        If SI.BatteryLifeTime <> -1 Then
            
            Dim hData As String
            
            If SI.BatteryLifeTime > 60 Then
               
                hData = Format$(SI.BatteryLifeTime / 60, "##,##") & " Minutos."
                
            Else
            
                hData = Format$(SI.BatteryLifeTime, "##") & " Segundos."
            
            End If
            
            SystemPowerStatus = SystemPowerStatus & "Minutos restantes de la batería : " & hData
 
        End If
        
    End If

End Function
Imagen
Nop no es de la api guise, todos los valores de retorno de las variable fueron tomadas de la mdsn de Microsoft , puedes consurtarlo si deseas para que veas todos los parámetros que están en la mdsn fueron los que yo puse , Ahora mismo no te pongo el link de la mdsn porque estor desde el iPod pero mañana te lo pongo, o simplemente pon la api en la parte de library de Microsoft y veras toda la información justo como yo la tengo ;) saludos.

PD: si ves la descripción de el proyecto veras que es una traduccioncon elgoogle translator de la de mdsn, en todo casi si que no puse la URL a mdsn , fallo mío .
Última edición por skyweb07 el 09 Ene 2010, 02:12, editado 1 vez en total.
Imagen
xD el problema es que aquí son la 3 de l mañana y no tengo sueno pero se me acabo la batería del portátil justo cuando termine de hacerel post por eso es que estoy ahora desde el iPod touch jajaja saludos
Imagen
Responder

Volver a “Otros lenguajes”