Je viens de tomber sur un os, je sent que je ne suis pas loin mais je ne reçois pas le retour de ma ligne de commande.
Le but est d'afficher le taux d'utilisation de mon GPU mais ici étrangement je n'ai rien en retour...
Pourtant en batch çà fonctionne bien
; Chemin complet vers nvidia-smi
Local $sNvidiaSMIPath = "C:\Windows\System32\nvidia-smi.exe"
Local $sTempFile = @TempDir & "\gpu_usage.txt"
Local $sCommand = '"' & $sNvidiaSMIPath & '" --query-gpu=utilization.gpu --format=csv,noheader,nounits > "' & $sTempFile & '"'
ConsoleWrite("DEBUG: Commande à exécuter: " & $sCommand & @CRLF)
; Exécuter la commande et rediriger la sortie vers un fichier temporaire
Local $iPID = Run(@ComSpec & " /c " & $sCommand, "", @SW_HIDE, 6)
; Attendre un court instant pour que le fichier soit écrit
Sleep(1000)
; Vérifier si le fichier a été créé et lire son contenu
If FileExists($sTempFile) Then
ConsoleWrite("DEBUG: Fichier temporaire trouvé: " & $sTempFile & @CRLF)
Local $sResult = FileRead($sTempFile)
ConsoleWrite("DEBUG: Contenu du fichier temporaire: " & $sResult & @CRLF)
FileDelete($sTempFile) ; Supprimer le fichier temporaire après lecture
If StringStripWS($sResult, 8) <> "" Then
MsgBox(0, "Utilisation des GPU", $sResult)
Else
MsgBox(16, "Erreur", "Impossible de récupérer l'utilisation des GPU, aucune donnée reçue.")
EndIf
Else
ConsoleWrite("DEBUG: Fichier temporaire non trouvé ou commande n'a pas fonctionné." & @CRLF)
MsgBox(16, "Erreur", "Erreur lors de l'exécution de nvidia-smi ou fichier de sortie introuvable.")
EndIf
Modifié en dernier par Anthony le ven. 06 sept. 2024 17:46, modifié 3 fois.
J'ai été diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018
; Exécuter la commande et rediriger la sortie vers un fichier temporaire Local$iPID=Run(@ComSpec&" /c "&$sCommand,"",@SW_HIDE,6)
; Attendre un court instant pour que le fichier soit écrit Sleep(1000)
; Vérifier si le fichier a été créé et lire son contenu IfFileExists($sTempFile)Then ConsoleWrite("DEBUG: Fichier temporaire trouvé: "&$sTempFile&@CRLF) Local$sResult=FileRead($sTempFile) ConsoleWrite("DEBUG: Contenu du fichier temporaire: "&$sResult&@CRLF) FileDelete($sTempFile); Supprimer le fichier temporaire après lecture
IfStringStripWS($sResult,8)<>""Then MsgBox(0,"Utilisation des GPU",$sResult) Else MsgBox(16,"Erreur","Impossible de récupérer l'utilisation des GPU, aucune donnée reçue.") EndIf Else ConsoleWrite("DEBUG: Fichier temporaire non trouvé ou commande n'a pas fonctionné."&@CRLF) MsgBox(16,"Erreur","Erreur lors de l'exécution de nvidia-smi ou fichier de sortie introuvable.") EndIf
J'ai été diagnostiqué pour trouble de la concentration, soyez indulgent
Merci à tous pour votre aide.
UDF: GuiStatusBarEx --- Une StatusBar complète, rapide et simple
Code: Code-Texte fusion --- Une GUI pour fusionner des GCodes pour CNC 3018