2011-07-01 2 views
2

J'essaye d'acquérir le type de CPU des visiteurs de Javascript en utilisant navigator.cpuClass afin de leur proposer le téléchargement correct. Dans mes tests j'ai couru dans un exemple de navigator.cpuClass renvoyant "Win32" quand attendez "Win64". L'utilitaire systeminfo sur mes retours PC:Pourquoi navigator.cpuClass est-il incorrect?

Intel64 Famille 6 Modèle 15 Stepping 11 GenuineIntel ~ 2400 Mhz (Q6600) qui est décrit plus en détail à: http://ark.intel.com/Product.aspx?id=29765

Quelqu'un peut-il me dire pourquoi Javascript ne voit pas un 64 bits CPU? J'ai besoin de détecter de manière fiable ce CPU ...

+1

Offrez ce que vous avez et laissez les utilisateurs décider ce qu'ils veulent. – RobG

Répondre

5

Peut-être utilisez-vous un navigateur 32 bits. En essayant les échantillons de here, j'obtiens les mêmes résultats (Win32) même si je cours un OS 64 bits (avec une version 32 bits de Chrome).

Cependant, dans mon cas, la chaîne appVersion de Chrome indique qu'elle s'exécute sous la couche d'émulation Wow64. Peut-être que vous pouvez trouver de tels conseils pour d'autres navigateurs.

Généralement, vous ne pouvez pas détecter la classe CPU de manière fiable car vous ne savez jamais si votre navigateur a pris la pilule rouge ou bleue.

Une solution pragmatique serait d'offrir un choix par défaut basé sur ce que votre navigateur renvoie, et permettre à l'utilisateur de passer à une version 64 bits. Comme la plupart des logiciels 32 bits fonctionnent parfaitement dans un environnement 64 bits (comme le prouve ce cas), la plupart des utilisateurs ne remarqueront pas s'ils choisissent le «mauvais» téléchargement.

+0

Je reçois aussi ce WOW64 de navigator.appVersion. Je vais devoir tester cela et voir. On dirait que ça pourrait être le meilleur indice. – Taptronic

+1

@Optimal Solutions: J'ai ajouté quelques notes supplémentaires. –

+0

merci pour le conseil! – Taptronic

Questions connexes