Version imprimable       Envoyer     
Cliquez pour évaluer et commenter
Tips
To determine whether UAC is causing an application compatibility problem, you can temporarily disable UAC. Here's a quick way to do this. ...

Read more!

The version of Robocopy included with Windows 7 offers a new switch for performing multi-threaded copies. Here's what you need to know. ...

Read more!

Windows 7 beta 1 introduces the built-in ability to burn discs directly from ISO and IMG files. Find out how you can easily burn ISO and IMG files to disc. ...

Read more!

Windows Vista offers built-in support for more control over screenshots. Find out what you can do with the Snipping Tool. ...

Read more!

To make replication go smoothly, you need to do a bit of planning, which involves selecting a specific replication model. Here's an overview of the common replication models you will likely choose from. ...

Read more!

Related Articles

Explorez les différentes versions de Services de déploiement Windows, voyez comment vous pouvez capturer une image de système d'exploitation personnalisée et découvrez ce dont vous avez besoin pour exécuter des installations plus automatisées.

Wes Miller

TechNet Magazine Août 2008

...

Read more!

La virtualisation vous tente ? Si ce n'est pas le cas, il est encore temps de changer d'avis. Découvrez toutes les informations indispensables pour déployer des systèmes virtuels et les coulisses de la virtualisation.

Wes Miller

TechNet Magazine December 2007

...

Read more!

Windows Vista propose de précieux outils qui facilitent la récupération de système. Mais pour les grandes entreprises diversifiées, les solutions prêtes à l’emploi ne fonctionnent généralement pas. Si vous travaillez dans une entreprise de grande taille qui doit créer des solutions de récupération automatique personnalisées, ne manquez pas cette discussion sur la création de votre propre solution de récupération avec Windows PE.

Wes Miller

TechNet ...

Read more!

Vous pouvez, sans trop d'effort, déployer un serveur Terminal Server pour héberger les applications dont vous avez besoin dans votre environnement. Toutefois, il y a des décisions importantes que vous devrez prendre pour veiller à ce que votre implémentation réponde aux attentes des utilisateurs. Greg Shields aborde les diverses options à votre disposition et explique l'effet de chacune d'elle.

Greg Shields

TechNet Magazine Janvier 2009

...

Read more!

Vous ne possédez pas SMS 2003 ? Pas de problème. Il existe une autre solution pour créer des déploiements de postes de travail simples. Ce guide détaillé qui vous aidera à utiliser BDD 2007 et SQL Server pour créer des déploiements évolutifs nécessitant très peu d'entrées manuelles, voire aucune.

Adam Shepherd

TechNet Magazine November 2007

...

Read more!

Also by this Author

Attendre que les problèmes de sécurité apparaissent et les corriger n'est pas une bonne solution. Wes Miller explique pourquoi la vraie sécurité implique l'identification proactive des causes initiales des vulnérabilités et leur résolution.

Wes Miller

TechNet Magazine Mars 2009

...

Read more!

Wes Miller met à jour son article de 2007 sur Microsoft Desktop Optimization Pack, ensemble de composants de premier ordre qui permet à votre service informatique d'économiser beaucoup de temps et d'énergie. Tous les composants ont été optimisés et une nouveauté a été ajoutée.

Wes Miller

TechNet Magazine Mai 2009

...

Read more!

Explorez les différentes versions de Services de déploiement Windows, voyez comment vous pouvez capturer une image de système d'exploitation personnalisée et découvrez ce dont vous avez besoin pour exécuter des installations plus automatisées.

Wes Miller

TechNet Magazine Août 2008

...

Read more!

Windows Vista propose de précieux outils qui facilitent la récupération de système. Mais pour les grandes entreprises diversifiées, les solutions prêtes à l’emploi ne fonctionnent généralement pas. Si vous travaillez dans une entreprise de grande taille qui doit créer des solutions de récupération automatique personnalisées, ne manquez pas cette discussion sur la création de votre propre solution de récupération avec Windows PE.

Wes Miller

TechNet ...

Read more!

La gestion de droits à l'entreprise est pratiquement le seul moyen de protéger la confidentialité des informations. Découvrez comment la solution de gestion de droits de Microsoft peut empêcher l'accès non autorisé aux informations de votre entreprise et leur utilisation.

Wes Miller

TechNet Magazine Novembre 2008

...

Read more!

Popular Articles

Découvrez comment utiliser le modèle d'automation Excel.Application afin de mieux traiter les données de vos serveurs et profitez des outils d'analyse et de graphiques intégrés à Excel.

Les scripteurs Microsoft

TechNet Magazine Janvier 2009

...

Read more!

La virtualisation apporte des changements considérables à la récupération après incident. Voici une introduction à la façon dont la plate-forme de virtualisation s'intègre à votre plan de récupération après incident, ainsi qu'un examen plus détaillé des options et considérations de sauvegarde et restauration pour Windows Server 2008 Hyper-V.

Adam Fazio

TechNet Magazine Octobre 2008

...

Read more!

Aaron Margosis

TechNet Magazine August 2006

...

Read more!

L'introduction de Hyper-V fait de la virtualisation une solution encore plus irrésistible pour les environnements informatiques. Obtenez une présentation du marché de virtualisation d'aujourd'hui et voyez comment Hyper-V améliore la facilité de gestion, la fiabilité et la sécurité de virtualisation

Rajiv Arunkundram

TechNet Magazine Octobre 2008

...

Read more!

La nouvelle fonctionnalité de préférences de stratégie de groupe de Windows Server 2008 et Windows Vista offre plus de 3 000 paramètres qui étendent considérablement le champ d'action des administrateurs dans le domaine de la stratégie de groupe. Voici des instructions qui vous aideront à utiliser les préférences de stratégie de groupe pour gérer votre environnement.

Derek Melber

TechNet Magazine Janvier 2009

...

Read more!

Our Blog

NAP monitors the health of specified computers when they attempt to connect to a network and includes a number of mechanisms to enforce health requirements. In this article, Geek of All Trades Greg Shields gives readers an overview of these enforcement mechanisms and, as an example, takes a closer look at setting ...

Read more!

Use Windows PowerShell to Manage Virtual Machines Here are a few examples of how you can use Windows PowerShell scripts to manage virtual machines running on a Server Core installation. Note that these scripts are presented as samples and may need to be customized to work in your environment.

Create a New ...

Read more!

Disabling an Unused Part of Group Policy Objects One way to disable a policy is to disable an unused part of the GPO. By disabling part of a policy that isn’t used, the application of GPOs and security will be faster.

Administer Windows Server 2008 Server Core from the Command Prompt ...

Read more!

In the August 2008 issue of TechNet Magazine, Paul Randal wrote an article Top Tips for Effective Database Maintenance.  It was geared toward "involuntary  DBAs" (IT pros who inadvertently wind up responsible for a SQL Server instance).  The article had a great response from our readers so Paul has written another ...

Read more!

Microsoft Forefront is designed to deliver an integrated security solution that makes it much easier to deploy and manage security across an organization’s IT infrastructure. In this, our annual security issue, we feature two articles that describe how Forefront Security protects instant messaging and e-mail.

Protect ...

Read more!

Affaires de Bureau Extension de Windows PE
Wes Miller


Avant même la sortie de Windows PE il y a plus de cinq ans, les clients impatients réclamaient déjà davantage de fonctions. Malheureusement, Windows PE n'a pas été conçu pour être facilement étendu de la même façon que, disons, Windows XP, en ajoutant des couches supplémentaires du système d'exploitation. Bien sûr, Windows PE se devait d'offrir une prise en charge
Win32® rudimentaire (pour permettre le fonctionnement de la plupart des applications Windows®) et une prise en charge de réseau et de stockage de masse (pour communiquer sur le réseau et pouvoir installer Windows). Cependant, dès le début, le shell était un élément que nous souhaitions limiter. En utilisant cmd.exe à la place du shell Windows Explorer traditionnel, nous avons limité ce que l'environnement de Windows PE pouvait faire et, surtout, nous avons fait en sorte que l'environnement par défaut soit facilement scriptable pour toutes les tâches d'automatisation.
Cela ne signifie pas que vous ne pouvez pas étendre Windows PE ; vous devez juste vous rappeler qu'il est limité. Vous pouvez vous attendre à ce que votre application ne fonctionne pas ou à ce que son comportement soit incorrect si elle requiert une des technologies répertoriées à la figure 1 (cette liste n'est pas exhaustive).

.NET Framework (toutes versions)
Interfaces ADSI (Active Directory® Services Interfaces)
DirectX®
Microsoft Data Access Components (MDAC)
Jet (Access)
Visual Basic® (y compris les versions pré-.NET)
Tout type d'exécutable nécessitant une infrastructure qui n'est pas installée avec Windows en mode natif.
Windows Explorer ou Internet Explorer
Windows Media® Player
SAPI, MAPI, TAPI (API Windows Speech, Mail et Téléphonie, respectivement)
Si vous ne savez pas de quoi votre application dépend, vous devez le découvrir. Mais comment ? Lorsque nous avons essayé de faire marcher ADO, des applications HTML (HTA) et des composants Windows Script Host (WSH) sous Windows PE avant sa sortie, nous avons été confrontés au même problème. Toutefois, vous devez être conscient que bien que cet article expose des façons de rechercher ces dépendances, l'ajout de fichiers binaires Windows à votre image Windows PE au delà de ce que la commande MKIMG inclut n'est pas couvert par le contrat de licence utilisateur final (CLUF). Il vous faudra acquérir un complément de licence auprès de Microsoft afin d'implémenter des modifications de cette nature dans votre environnement.

Comprendre les dépendances
Si vous ouvrez le fichier .inf d'une application dans le Bloc-notes et que vous l'examinez soigneusement, vous pouvez en apprendre beaucoup. En fait, c'est souvent la façon la plus facile de comprendre une application et de voir quelles sont ses dépendances. La chose importante à retenir au sujet de Windows PE est le fait que l'application est généralement si dépouillée que vous devrez déboguer plusieurs niveaux de dépendances : les dépendances directes propres de votre application et les dépendances que celles-ci peuvent amener, afin d'assurer un fonctionnement fiable de votre application. En gros, une cascade assez grande de dépendances peut survenir si vous ne faites pas attention. Avec quelques ajouts de composants accidentels (ou voulus), votre image peut grandir considérablement en taille et en complexité.
Si vous disposez d'un fichier .inf qui décrit l'application, vous pouvez obtenir des indices sur les dépendances en recherchant les clés de registre et les fichiers ajoutés à votre système par le fichier .inf. Recherchez les sections CopyFiles et AddReg. Ces entrées pointeront vers des applications, des fichiers DLL et d'autres fichiers dont dépend votre application. Parmi les trois compléments conçus pour Windows PE (ADO, HTA, et WSH), WSH fut le plus simple à créer. Étant donné qu'une version redistribuable de WSH était encore disponible pour des versions plus anciennes de Windows et qu'il existe actuellement un fichier .inf intégré dans Windows qui exécute les associations de fichiers pour WSH (dans %windir%\inf\wsh.inf), son installation dans Windows PE fut relativement facile.

Orca et prise d'instantanés
Si l'application en question est distribuée en tant que fichier Microsoft® Installer (MSI), vous pouvez faire deux choses pour trouver les dépendances. Si vous êtes un spécialiste de MSI, vous pouvez utiliser Orca (un outil d'édition des fichiers Windows Installer distribué dans le cadre du kit de développement logiciel Windows Server® 2003 R2 platform : Rendez-vous sur la page go.microsoft.com/fwlink/?LinkId=77941) pour l'afficher. Vous pouvez également installer le MSI pour les composants de votre choix, en réalisant une analyse avant/après des fichiers et de clés de registre qui ont été modifiés. Vous pouvez vider le registre, installer l'application, exporter à nouveau le registre, puis exécuter WinDiff dessus (voir l'encadré « Utilisation de WinDiff »). Le résultat peut ensuite être utilisé comme modèle pour les modifications qui doivent être apportées au registre. Le problème est que le nombre de modifications peut être assommant. Néanmoins, ce peut être la meilleure option si vous n'avez pas de fichier .inf (ou l'auteur de l'application) à votre disposition.
Vous connaissez peut-être le processus de prise d'instantanés d'applications. En gros, il s'agit de la même analyse avant/après que celle réalisée pour faire fonctionner votre application. Auparavant, Microsoft distribuait (avec Windows 2000) un outil qui faisait la même chose, mais cet outil n'est pas compatible avec les versions plus récentes de Windows. Un certain nombre d'applications commerciales (rassembleurs d'installations) peuvent s'en charger, mais certains utilitaires gratuits aussi. Comme solution, vous pouvez installer le kit de développement logiciel de plate-forme (voir le lien dans le paragraphe précédent), qui inclut WinDiff. Notez que pour réaliser la comparaison avec WinDiff, il est préférable d'installer l'application sur Windows Server 2003 Service Pack 1 (SP1) parce qu'il s'agit de la version de Windows PE que vous êtes censé utiliser : Windows PE 1.6 généré à partir de Standard Edition ou Enterprise Edition (avec SP1). En réalisant cette tâche sur Windows Server 2003, vous disposerez de l'environnement le plus proche de ce que vous obtiendriez sur Windows PE (où évidemment vous ne pouvez pas exécuter un MSI). Suivez les étapes de l'encadré « Utilisation de WinDiff ».
Vous trouverez ainsi un bon nombre des informations modifiées. Malheureusement, il n'existe pas de méthode facile pour exporter les informations modifiées des captures de registre ou de fichiers afin de créer un manifeste pour installer votre application. Vous devez incorporer les modifications manuellement. C'est là que nous avons rencontré certains de nos plus gros problèmes avec la première version de Windows PE. Le simple fait de parvenir à faire fonctionner les composants HTA relevait de la gageure puisqu'il n'y avait pas de définition pour eux (en dehors d'Internet Explorer®) au sein de Microsoft. En utilisant la différenciation, nous avons pu confectionner une prise en charge HTA suffisante pour que ça fonctionne. Vous pouvez ajouter manuellement ces clés dans le registre Windows PE, mais vous souhaiterez peut-être ajouter les clés une fois que Windows PE aura démarré. Vous pouvez regarder les fichiers OC.bat et OC2.bat utilisés pour installer la prise en charge HTA, WSH et/ou ADO dans Windows PE à l'aide du script buildoptionalcomponents.vbs inclus dans les outils de génération de Windows PE.

Outils utiles
Même après avoir isolé les dépendances directes, il est souvent difficile de trouver tous les fichiers binaires dont dépend votre application. Vous ne saurez pas, par exemple, si elle nécessite un autre fichier DLL ou OCX pour réaliser certaines tâches. Alors, comment savoir ? Mark Russinovich, rendu célèbre par Sysinternals (à présent Technical Fellow chez Microsoft), a conçu un utilitaire pratique appelé listdlls qui s'en charge. Vous pouvez télécharger listdlls à l'adresse microsoft.com/technet/sysinternals/utilities/ListDlls.mspx. Pour utiliser l'utilitaire, exécutez la commande listdlls.exe > dlls.txt et examinez ensuite le résultat. La figure 2 présente le résultat de listdlls exécuté sur lui-même. Vous pouvez comparer cette liste aux fichiers DLL et OCX inclus dans Windows PE pour déterminer si toutes les dépendances de votre application sont en place ou non (dans le cas de listdlls, elles sont déjà présentes). Pour la prise en charge HTA dans Windows PE, listdlls était essentiel pour l'identification de certaines dépendances qui ne pouvaient pas être identifiées autrement.
Figure 2 Résultat de listdlls exécuté sur lui-même (Cliquer sur l'image pour l'agrandir)
Mais ce n'est pas parce qu'une DLL est répertoriée que l'application en a forcément besoin pour fonctionner. Si vous chargez le Bloc-notes, par exemple, vous verrez qu'il charge uxtheme.dll. Sous Windows PE, cette DLL n'est pas disponible et, en fait, puisque les thèmes Windows ne sont pas utilisés, elle ne sera jamais chargée. Il est très difficile de distinguer les DLL répertoriées par listdlls qui vous sont utiles de celles qui sont chargées sur demande par Windows. Malheureusement, seule une expérimentation empirique ou une connaissance très poussée des aspects les plus précis de Windows vous y aideront (à cette fin, je recommande le livre de Mark Russinovich et David Salomon, Microsoft Windows Internals, Fourth Edition (Microsoft Press®,2004).
En fait, Mark inclut également la même fonctionnalité dans le remplacement de Process Explorer pour le gestionnaire des tâches de Windows, disponible gratuitement. La différence est que listdlls crée un résultat qui, à mon avis, est plus facilement converti en script et utilisé pour la recherche et le rassemblement de dépendances manquantes.
Notez que même après avoir ajouté une DLL à votre image, vous risquez d'être encore loin d'en avoir terminé. En effet, il existe deux types de DLL : celles qui doivent être enregistrées et celles qui ne doivent pas l'être. Malheureusement, il n'est pas facile de les distinguer, à moins d'essayer de les enregistrer toutes. Pour enregistrer une DLL (ou un OCX), exécutez regsvr32 dllname.dll. Si cela fonctionne correctement, une boîte de dialogue vous avertit que la DLL a été enregistrée. Sinon, vous ne recevez pas de message ou, plus probablement, une boîte de dialogue vous informera soit que l'enregistrement de la DLL a échoué, soit qu'il n'a pas pu se faire. Au cours du développement des composants facultatifs HTA et ADO pour Windows PE, nous avons découvert que les DLL requièrent un stockage réinscriptible lors de leur enregistrement, soit pour écrire temporairement un fichier .inf pour l'installation, soit pour enregistrer une autre dépendance (disons un répertoire spécifique dont elles ont besoin). Dans Windows PE, cela était synonyme d'échec. Heureusement, avec Windows PE 2.0, les tâches de ce type fonctionnent puisqu'il y a de l'espace disponible par défaut.
Process Monitor est un troisième outil créé par Mark et publié récemment. Process Monitor peut être considéré comme un sur-ensemble de Regmon et Filemon, qui fournit cependant beaucoup plus de détails tout en ajoutant une toute nouvelle couche de communication interprocessus. Cet outil incroyablement puissant peut vous aider à résoudre des problèmes d'applications dans Windows et à répondre à des questions sur les interdépendances des DLL. Process Monitor peut être téléchargé.

Suppression de fichiers Windows PE
Outre la possibilité d'ajouter des éléments à Windows PE, l'une des demandes les plus fréquentes concernait la réduction de la taille de réduire Windows PE. Vous pouvez prendre certaines mesures pour réduire quelque peu la taille de Windows PE. Votre copie sous licence de Windows PE comprend normalement un ensemble d'outils de génération et de la documentation. L'un des documents est un fichier d'aide appelé winpe.chm. Si vous ouvrez ce fichier et que vous explorez la section Guide de l'utilisateur de l'Environnement de préinstallation Windows, vous devriez voir une rubrique intitulée Reducing the Size of Windows PE (Réduction de la taille de Windows PE). Cette section répertorie un ensemble de fichiers que vous pouvez supprimer en toute sécurité (si vous n'en avez pas besoin). Vous trouverez trois sections concernant les fichiers supprimables :
  • Les fichiers de police peuvent toujours être supprimés.
  • Les fichiers .inf concernant la mise en réseau et les utilitaires peuvent être supprimés, mais ne le faites que si vous n'avez absolument pas l'intention d'utiliser votre version sur le réseau.
  • Les utilitaires de ligne de commande ne doivent pas être supprimés. Je vous déconseille d'en supprimer à moins que vous ne sachiez exactement à quoi ils servent et ce qui risque de se passer si vous les supprimez.
Après avoir déterminé quels sont les fichiers que vous pouvez exclure en toute sécurité, vous pouvez tout simplement écrire un fichier batch ou un autre script et les supprimer de votre version de Windows PE une fois que mkimg.cmd a terminé la mise en œuvre.

Modification du Registre Windows PE
Vous pouvez constater que nous avons fait le choix conscient de ne pas installer les composants facultatifs au moment de la mise en œuvre. Bien que ceci prenne un peu plus de temps au moment de l'exécution, cela signifie également que nous n'avons pas dû concevoir un moyen entièrement nouveau de replacer ces composants dans Windows PE, ce que nous n'avions pas le temps de faire et qui serait sans doute revenu à les omettre complètement. Mais que faire si vous souhaitez effectuer une modification du Registre, par exemple ajouter un delta de modification du Registre pour votre application, ou si vous voulez simplement modifier une clé qui pourrait empêcher le fonctionnement de l'application ? C'est en fait très simple grâce à regedit, comme illustré à la figure 3. Procédez de la façon suivante :
  1. Exécutez regedit et sélectionnez la ruche HKEY_LOCAL_MACHINE.
  2. Sélectionnez Fichier | Chargement de la ruche, puis accédez à l'emplacement de votre version de Windows PE. Sélectionnez setupreg.hiv sous I386\System32\ (ou MiniNT\System32, si c'est une image que vous mettez sur un disque dur).
  3. Entrez un nom temporaire pour la ruche, tel que WinPE, et accédez à ce nœud sous HKLM.
  4. Apportez les modifications nécessaires à cette clé. Il est intéressant de noter que ce nœud correspond effectivement au nœud HKLM\System que l'on trouverait sur une installation Windows normale.
  5. Une fois vos modifications réalisées, sélectionnez la clé que vous avez créée sous HKLM à l'étape 3 (il est très important de ne pas se tromper ici car vous pourriez endommager votre système).
  6. Sélectionnez Fichier | Décharger la ruche... et confirmez dans la boîte de dialogue Oui | Non. Veillez à démonter le registre à chaque fois car son verrouillage empêcherait une mise en œuvre réussie de Windows PE.
Figure 3 Ouverture du Registre Windows PE (Cliquer sur l'image pour l'agrandir)
En suivant ces étapes, vous pouvez modifier HKLM\System. Il existe également deux autres clés situées sous I386\System32 qui vous permettent de modifier d'autres zones du registre : DEFAULT est la ruche par défaut pour les utilisateurs (même SYSTEM, que vous exécutez en utilisant Windows PE) et SOFTWARE, qui est identique à HKLM\Software. Comme toujours, modifiez le registre avec précaution et seulement en cas de besoin.
Fort de ces informations, vous devriez pouvoir essayer de déplacer votre outil de dépannage ou de récupération préféré sur Windows PE. Le mois prochain, j'aborderai la suite PSTools, un ensemble d'outils de gestion système très utiles également écrit par Mark Russinovich.
Utilisation de WinDiff
WinDiff peut vous aider à trouver les dépendances de votre application. Il vous suffit de suivre ces étapes pour réussir votre installation et votre exécution :
  1. Préparez votre système pour l'installation : cela vous permettra de réduire le temps et les éventuelles modifications de fichier ou de registre entre l'instantané initial et l'instantané final.
  2. Ouvrez une invite de commande et exécutez HKLM C:\HKLM1.reg pour réaliser une exportation complète de la ruche de registre HKEY_Local_Machine.
  3. Exécutez C:\*.* /S > C:\C1.txt pour supprimer tous les fichiers du lecteur C: (si C: est votre lecteur système).
  4. Installez votre application et configurez les paramètres de post-installation.
  5. Exécutez l'exportation de registre HKLM C:\HKLM2.reg.
  6. Exécutez le répertoire C:\*.* /S > C:\C2.txt.
  7. Ouvrez WinDiff, sélectionnez Fichier | Comparer les fichiers... et sélectionnez HKLM1.reg dans la première boîte de dialogue Ouvrir et HKLM2.reg dans la seconde.
  8. Vous devriez voir s'afficher en rouge un message indiquant le plus récent. Soyez patient ; ceci peut prendre un bon moment car il arrive que les exportations HKLM soient assez volumineuses.
  9. Double-cliquez sur le texte en rouge pour développer les différences.
  10. Vous souhaiterez peut-être configurer ce qui est affiché dans la comparaison en cochant Options | Show Right-Only Lines. Ceci affichera uniquement les nouvelles lignes dans le second fichier de comparaison (donc seuls les nouveaux fichiers et les nouvelles clés de registre apparaîtront).
Notez que vous aurez peut-être besoin d'utiliser la fonction de recherche pour trouver les clés en rapport avec votre application. Dans les Figures A et B, vous pouvez voir les modifications de fichier et de registre pour une application fictive créée par mes soins. Heureusement, les fonctions Copier et coller sont disponibles dans WinDiff. Pour utiliser ces fonctions, il suffit de cliquer sur la ligne !> et de sélectionner les lignes souhaitées.
Figure A Entrées WinDiff (Cliquer sur l'image pour l'agrandir)
Figure B Clé spécifique dans WinDiff (Cliquer sur l'image pour l'agrandir)


Wes Miller est responsable du développement chez Pluck (www.pluck.com) à Austin, au Texas. Auparavant, Wes a travaillé chez Winternals Software à Austin et chez Microsoft en tant que responsable de programme et responsable de produit pour Windows. Vous pouvez contacter Wes à l'adresse suivante : technet@getwired.com.
© 2008 Microsoft Corporation et CMP Media, LLC. Tous droits réservés. Toute reproduction, totale ou partielle, est interdite sans autorisation préalable.
Page view tracker