Je suis tombé sur quelque chose de vraiment énigmatique concernant System.getProperty("os.name")
. Selon a Java bug on the matter et the Java 5 release notes (recherche de « os.name »), il y avait un bug dans Java avec les premières versions de « Longhorn » de Vista qui aurait été fixé dans la version v5 10.Pourquoi Java sur une boîte Vista rapporte-t-il qu'il est sous XP?
Cependant ma boîte de Vista SP1 - en utilisant à la fois la version 15 et la version 6 de la v5 6 - System.getProperty("os.name")
renvoie «Windows XP». Plus loin System.getProperty("os.version")
renvoie "5.1". Cependant, je ne trouve rien à propos de ce problème via Google. Cela me fait me demander si c'est bizarre avec ma configuration de Vista. J'ai essayé d'appeler la fonction API GetVersionEx() à partir d'un programme de test C et elle renvoie la version majeure 6, minor 0 (comme je m'attendais à une installation de Vista).
Est-ce que quelqu'un d'autre a rencontré ce problème, connaît un correctif ou a des suggestions de comment je pourrais contourner ce problème sans utiliser JNI?
Cela m'a aidé à comprendre pourquoi notre produit retournait les mauvaises valeurs. Le bug java, corrigé en 6u14 ... dommage que nous soyons encore en expédition avec 6u13 = D – GreenKiwi