:salut:
J'ai utilisé l'outil Mgmtclassgen.exe pour pouvoir générer une classe correspondante à l'objet Win32_OperatingSystem des WMI. J'ai fait cette action sur Windows Vista et dessus tout fonctionne correctement. J'accède nottement à la propriété LastBootUpTime sans aucun problème grâce au code suivant, généré par ce même outil :
Maintenant sur un système équipé de Windows XP SP2 il y a un crash sur la ligne suivant le "get{" de "IsLastBootUpTimeNull " avec comme méssage :Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 [Browsable(false)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] public bool IsLastBootUpTimeNull { get { if ((curObj["LastBootUpTime"] == null)) { return true; } else { return false; } } } [Browsable(true)] [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)] [Description("Heure du dernier démarrage du système d\'exploitation")] [TypeConverter(typeof(WMIValueTypeConverter))] public System.DateTime LastBootUpTime { get { if ((curObj["LastBootUpTime"] != null)) { return ToDateTime(((string)(curObj["LastBootUpTime"]))); } else { return System.DateTime.MinValue; } } }
Quelqu'un connaitrait-il la raison de ce crash ?Citation:
System.Management.ManagementException: Chemin de l'objet non valide
à System.Management.ManagementException.ThrowWithExtendedInfo(ManagementStatus errorCode)
à System.Management.ManagementObject.Initialize(Boolean getObject)
à System.Management.ManagementBaseObject.get_Properties()
à System.Management.ManagementBaseObject.GetPropertyValue(String propertyName)
à System.Management.ManagementBaseObject.get_Item(String propertyName)
à ROOT.CIMV2.Win32.Win32OperatingSystem.get_IsLastBootUpTimeNull() dans ...
Merci d'avance