Bonjour à tous,
Dans un script j'utilise le module Config de perl pour déterminer la version de l'OS sur laquel le script est en train de tourner et décider d'un certain nombre d'actions en conséquence. Pour cela je récupère la valeur de la clef 'osvers' du hash %Config.
Mon problème est le suivant: sans raison apparente des incohérence apparaissent dans les valeurs remontées dans cette variable. Par incohérence j'entend des valeurs identiques pour deux OS différent, et (presque pire) deux valeurs différentes pour un même OS.
Exemples en utilisant la commande perl -e "use Config;print $Config{osvers};":
Sur mon pc (XP Pro SP3 32bits, ActivePerl 5.8.9.827) => 5.00 comme valeur remontée
Sur celui d'un collègue (XP Pro SP3 32bits, ActivePerl 5.10.1.1008) => 5.2
Sur un troisième (Win 7 64bit, ActivePerl 5.8.9.829) => 5.2
Sur un Windows Server 2008 R2 => 5.2 (aussi)
Sur un Windows 2003 SP2 => 5.00
Jusqu'à présent je pensait la valeur de osvers unique pour un OS donné (contrairement à $^O qui renvoi à une typologie d'OS). La différence constatée sur XP m'inquiète, le comportement du script devant être homogène pour une version d'OS donnée (je pourrais... difficilement mais bon.. traiter l'identité entre valeurs pour des OS différents).
Avez vous déjà rencontré ce problème ? Est-ce une erreur d'utilisation de ma part sur cette variable ? Sinon, comment faites vous pour déterminer la version d'OS sur laquelle vous vous exécutez ?
Merci d'avance.
Partager