Ce mardi 30 septembre, Microsoft levait le voile sur Windows 10, présenté comme une plate-forme convergente orientée cloud et mobilité avec un focus sur la productivité « cross-device ».
Recherche universelle, bureaux virtuels, retour du menu Démarrer… Les démonstrations se sont succédé, mais une question est restée en suspens : pourquoi ne pas avoir choisi le nom commercial « Windows 9 », qui s’inscrivait dans la suite logique de Windows 8 ? Microsoft a bien tenté d’expliquer que le chiffre 10 reflétait plus pertinemment le concept d’expérience unifiée. Mais les observateurs sont restés dubitatifs : selon certains, l’éditeur a voulu marquer la rupture avec la version actuelle de son OS, froidement accueillie par le public depuis sa sortie en octobre 2012.
Une autre hypothèse fait son chemin dans la communauté des développeurs. Sur le réseau social américain reddit, un utilisateur postant sous le pseudonyme « cranbourne » et se revendiquant développeur Microsoft affirme que le problème est lié à une implémentation de code dans certains programmes tiers.
De nombreux logiciels encore exploités actuellement en entreprise examinent la machine sur laquelle ils s’exécutent pour ajuster automatiquement leurs paramètres. Plusieurs milliers d’entre eux remontent jusqu’à de très anciennes versions de Windows pour maximiser la compatibilité.
Selon le langage dans lequel ils sont écrits, les programmes récupèrent soit la version du noyau (NT 6.1 pour Windows 7, NT 6.2 pour Windows 8…), soit le nom commercial de l’OS. Visual Basic entre dans la première catégorie avec la fonction GetWindowsVersion, tout comme Python avec platform.release() et le C avec GetVersionEx. Les éditeurs qui exploitent JavaScript ont tendance à choisir la deuxième solution… Ce qui pose problème avec la fonction suivante :
if(version.StartsWith(« Windows 9 »))
{ /* 95 and 98 */
} else {
Si le programme détecte la chaîne de caractères « Windows 9 » dans le nom du système d’exploitation, il bascule en mode de compatibilité pour Windows 95 et 98. C’est d’autant plus problématique que cette portion de code a tendance à subsister dans les logiciels commerciaux qui existaient déjà dans les années 90 et qui sont encore commercialisés aujourd’hui.
Selon plusieurs des développeurs qui s’expriment sur le fil de discussion reddit, la logique chez beaucoup d’éditeurs est de laisser le code tel quel tant qu’il fonctionne, essentiellement pour des questions de temps… et parce que Windows le tolère : Microsoft fait régulièrement évoluer ses interfaces de programmation, mais fait en sorte d’assurer une compatibilité maximale avec les anciens programmes.
A noter qu’il est récemment arrivé le même type de souci avec le plugin Java pour Mac, qui interprétait OS X 10.10 comme la version 10.1.
—— A voir aussi ——
Quiz ITespresso.fr : connaissez-vous bien Microsoft ?
Crédit illustration : Lonely – Shutterstock.com
Deux offres de cybersécurité portées par ITrust et Docaposte intègrent des suites collaboratives. Présentation.
Les dernières migrations de Windows 10 vers Windows 11 vont accélérer l'adoption des PC IA. Mais des…
L’IA générative excelle dans plusieurs cas d’usage, notamment dans l’analyse, la recherche et la synthèse…
Trop tôt pour envisager d'acquérir un PC Copilot+ ? Les roadmaps d'Intel et d'AMD peuvent…
Dévoilés lors du CES 2025, les PC Copilot+ au format convertible restent encore limitée dans…
Les fonctionnalités de Gemini sont intégrées dans la suite bureautique Google Workspace. Conséquence : les…