Page 2 sur 2

Publié : ven. 04/févr./2005 13:39
par Le Soldat Inconnu
quand tu fait popriété du système, tu vois bien la fréquence de ton processeur, non ?

Publié : ven. 04/févr./2005 14:03
par Jacobus
8O Ben oui, PIII 1000 MHz
Mais je ne trouve pas la valeur retournée par le Callfunction.

Publié : ven. 04/févr./2005 19:15
par Dräc
J'ai peut-etre loupé un truc, mais ce n'est pas ce retour là de la Callfunction que vous voulez ?

Code : Tout sélectionner

Procedure.l GetProcessorFrequency() ; Retourne la fréquence du processeur 
  Protected Resultat, Lib 
  Structure PROCESSOR_POWER_INFORMATION 
    Number.l ; Numéro du processeur 
    MaxMhz.l ; Fréquence max en mhz de la configuration actuelle 
    CurrentMhz.l ; Fréquence actuelle 
    MhzLimit.l ; Fréquence max en mhz supportée par le processeur 
    MaxIdleState.l 
    CurrentIdleState.l 
  EndStructure 
  Lib = OpenLibrary(#PB_Any, "PowrProf.dll") 
  If Lib 
    Debug "OK Lib" 
    val = CallFunction(Lib, "CallNtPowerInformation", 11, 0, 0, lpOutputBuffer.PROCESSOR_POWER_INFORMATION, SizeOf(PROCESSOR_POWER_INFORMATION))
    Debug val
    If val =0
      Resultat = lpOutputBuffer\MaxMhz 
      Debug "OK Fonction" 
    EndIf 
    CloseLibrary(Lib) 
  EndIf 
  ProcedureReturn Resultat 
EndProcedure 

MessageRequester("Information", "Fréquence du processeur :" + Chr(10) + Str(GetProcessorFrequency()) + " Mhz", 64)

Publié : ven. 04/févr./2005 19:32
par Jacobus
Je suppose en effet que c'est ce que voulait Régis

j'ai procédé de cette façon :

Code : Tout sélectionner

Debug CallFunction(Lib, "CallNtPowerInformation", 11, 0, 0, lpOutputBuffer.PROCESSOR_POWER_INFORMATION, SizeOf(PROCESSOR_POWER_INFORMATION))=0
j'ai oubhlié d'enlever le 0.

Sinon oui j'obtiens la même valeur que toi