Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cómo detecta vb la información de la batería de una computadora portátil?

¿Cómo detecta vb la información de la batería de una computadora portátil?

La función de declaración privada getsystempowerstatus lib "kernel 32" (lpsystempowerstatus como información del estado de la batería) es tan larga.

Información del estado de la batería de tipo privado

El estado de la energía externa es byte "No conectado=0 Conectado=1 No se puede obtener información=255.

Estado de la batería por byte 'Potencia superior a 66=1, Potencia inferior a 33=2, Menos de 5=4, Cargando=8, Sin batería=128, No se puede obtener información=255

La descripción anterior parece incorrecta. La siguiente es mi propia prueba:

¿La potencia es mayor que 66=1?

¿La potencia es menor que 33=?

¿La potencia es menor que 5=? p>Carga=9

Sin batería=128

La capacidad restante de la batería es de 0 a 100 bytes, o 255 si se desconoce

" Reservado. "Bytes" debe ser 0

Energía restante de la batería en segundos como un número entero, o -1 si se desconoce.

Si se desconoce, carga completa en segundos como un número entero La capacidad de la batería es -1 <. /p>

Tipo de finalización

Private subform_Load()

Estado de llamada update_timer

El formulario de llamada es transparente ((Me.hwnd), (170 ))

Conector final

Private substate_timer()

Información de atenuación como información del estado de la batería

Información GetSystemPowerStatus

[Head]Estado de energía externa

si (Información.Estado de energía externa) = (1) entonces

Título de etiqueta = ("Sí")

ElseIf = (0)Entonces

Caption de etiqueta = ("Ninguno")

ElseIf = (255) Luego

Título = ("Error de lectura de estado. ")

Finalizar si...

[Cola]Estado de energía externa

[Cabeza]Estado de la batería

Si (Información. Estado de la batería) = (8) o (Información. Estado de la batería) = (9) Entonces

Etiqueta 3. Título = ("Cargando")

ElseIf = (128) Entonces

Etiqueta 3. Caption = ("Sin batería")

ElseIf = (255) Then

Etiqueta 3. Título = ("Error de lectura de estado")

Otro

Etiqueta 3. )

Terminará si...

[Cola]Estado de la batería

[Head]Energía restante

Si (Mensaje. Energía restante de la batería)<=(100)entonces

I. Energía restante de la batería); ("")

Etiqueta5. Caption =(Información. Energía restante de la batería ("")

Barra de progreso de energía de la batería. Valor = (Información.Carga restante de la batería)

Barra de progreso de energía de la batería. Visible = (Verdadero)

ElseIf = (255)Entonces

Etiqueta5. title = ("Error de lectura de estado")

163 me. Caption =("Error al leer la energía restante de la batería")

164 barra de progreso de energía de la batería.

Visible = (False)

165 End If

166 '[ tail] Energía restante

167 Conector final