Quelles sont les principales différences entre la programmation pour Windows XP et Vista?
-
09-06-2019 - |
Question
À partir d'une application de bureau développeur point de vue, quelle est la différence entre le développement pour Windows XP et le développement pour Windows Vista?
La solution
Interface Utilisateur
En regardant les Expérience Utilisateur De Windows Vista Lignes Directrices vous pouvez voir qu'ils ont changé de nombreux éléments de l'INTERFACE utilisateur, que vous devez être conscient de.De grandes choses à prendre note:
- De grandes icônes
- Nouveau la police (Ce qui affecte certains de l'INTERFACE utilisateur personnalisée constistency)
- Nouveau la boîte de dialogue caractéristiques (boîtes de dialogue tâche)
- Modifié des boîtes de dialogue communes (comme l'ouverture de Fichier, Enregistrer sous, etc.)
- Boîte de dialogue de texte le style et le ton, et regarder et se sentir
- Nouveau Aero Assistants
- Redessiné les barres d'outils
- Mieux la notification de l'INTERFACE utilisateur
- Nouvelle méthode recommandée, y compris un commande de recherche
- Verre
64-bit
Vista 64-bit edition, et bien que XP fait trop, vos utilisateurs sont plus susceptibles d'utiliser Vista 64 que XP 64.Maintenant que vous avez à traiter avec:
- Registre de virtualisation
- La redirection de registre (Wow6432Node)
- La réflexion du registre
- Signatures numériques pour les modules du noyau
- MSI installateurs ont de nouvelles propriétés pour faire face à
Contrôle de compte d'utilisateur
Contrôle De Compte D'Utilisateur grandement affecte les autorisations par défaut de votre demande lors de l'interaction avec le système d'exploitation.
- Comment UAC fonctionne et affecte votre application (voir aussi la exigences doc)
- Les installateurs d'avoir à traiter avec le contrôle de compte d'utilisateur
De Nouvelles Api
Il y a de nouvelles Api, qui sont destinés à de nouvelles méthodes d'application de la construction ou de permettre à de nouvelles fonctionnalités:
- API de chiffrement:La Prochaine Génération (GNC)
- Extensible Application Markup Language (XAML)
- Windows Communication Foundation (WCF)
- Windows Workflow Foundation (WF)
- Et de nombreux plus petits
Les installateurs
Parce que les installations ne peuvent utiliser le bon temps de fonctionnement de leur installation après qu'une transaction est terminée, actions personnalisées va échouer si votre action personnalisée dll de Visual C++ runtime au-dessus de la VS 2005 CRT (SP1).
Autres conseils
Ne pas jamais supposons que votre utilisateur a accès à certaines zones du disque (c'est à direles fichiers de programme, le répertoire windows, etc).Au lieu de cela, le compte d'utilisateur par défaut ne seront en mesure d'écrire à une petite partie de leurs données d'application.Aussi, ils ne seront pas en mesure d'écrire mondiale des zones de la base de registre - seulement la section de l'utilisateur actuel.
Vous pouvez bien sûr d'élever leurs privilèges, mais qui est en soi une tâche.
Généralement programmation pour Vista est le même que XP, c'est juste le nouveau compte des restrictions que vous avez à se méfier.
Jetez un oeil à cette page en ce qui concerne votre application "contrôle de compte d'utilisateur courant"
http://www.codeproject.com/KB/vista-security/MakingAppsUACAware.aspx
Il peut être, mais c'est un choix conscient de vous faire en tant que développeur.Vous pouvez utiliser la nouvelle Vista trucs, comme le contrôle de compte d'utilisateur et CommandLinks et Aero et ainsi de suite.Mais vous n'avez pas à (même contrôle de compte d'utilisateur peut être programmé autour de vous -- il suffit de ne pas faire quelque chose qui a besoin des privilèges d'administrateur).Si vous choisissez d'ignorer toutes les Vista choses, puis il n'y a absolument aucune différence entre les deux.
Si vous ne souhaitez inclure dans votre application, cela fait une différence.Mais je dirais pas énorme.Et si vous abstraire les différences (par exemple, écrire votre propre fonction qui montre TaskDialog pour Vista, mais qui dumbs en bas de l'entrée dans un MesssageBox sur XP), alors vous aurez seulement être écrit à l'encontre de votre propre code, et les différences semblent presque rien.
Aussi, beaucoup de Vista de nouvelles choses (par exemple, contrôle de compte d'utilisateur ou Aéro) sont des choses que vous vous inquiétez pour une fois, lors de la création de la première pièce de la fonctionnalité qui l'utilise, le faire fonctionner, et de ne jamais penser à nouveau pendant que vous êtes du développement de l'application.
De loin la partie la plus douloureuse de déplacer une application à partir de XP à Vista (de mon point de vue) est de traiter avec une multitude de services et IPv6 trucs qui utilise les ports qui étaient auparavant gratuits, et de traiter avec le wps -> WiFi Native de transition.
Le contrôle de compte d'utilisateur truc est fondamentalement un point discutable;il n'y a que très peu le développeur de l'application a besoin de faire.