Bonjours , je voudrais recuperer le niveau des batteries d'un ordi portable (2 batterie)
J'ai fait un prog similaire en AutoIT et cela fonctionne tres bien
Mais en visual basic quand j essai de lire j ai une erreur
Version Autoit
Version VB.NET
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Func Batt() Local $s_Text = '' Dim $Obj_WMIService = ObjGet('winmgmts:\\' & @ComputerName & '\root\cimv2'); If (IsObj($Obj_WMIService)) And (Not @error) Then Dim $Col_Items = $Obj_WMIService.ExecQuery("select * from CIM_Battery") Local $Obj_Item For $Obj_Item In $Col_Items $s_Text &= $Obj_Item.Name $s_Text &= " : " & $Obj_Item.EstimatedChargeRemaining $s_Text &=":" & @CRLF Next Return String($s_Text) Else Return 0 EndIf EndFunc
Pour infos j'ai coder la meme fonction pour le type d os et ca fonctionne sans probleme
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Public Function Batt() As String Dim Txt As String = "" Try Dim searcher As ManagementObjectSearcher = New ManagementObjectSearcher("select * from CIM_Battery") For Each WMI_Info As ManagementObject In searcher.Get() Txt &= WMI_Info("Name").ToString() + vbNewLine Next WMI_Info Return Txt Catch ex As Exception Return "Erreur lecture Batt " + ex.Message End Try End Function
Partager