EXEMPLE : Utilisation de DUPS.exe pour résoudre les problèmes de compatibilité DLL

Traductions disponibles Traductions disponibles
Numéro d'article: 247957
Agrandir tout | Réduire tout

Sommaire

Résumé

L'outil DLL Universal Problem Solver (DUPS.exe) est un qui contient tous les utilitaires décrits dans le janvier 2000 Microsoft Developer Network (MSDN) News article « Fin de l'enfer des DLL ». Veuillez vérifier que À l'article MSDN avant la lecture de cet article.

Le package DUPS est un ensemble des utilitaires que vous pouvez utiliser pour suivre et de comparer les versions DLL sur plusieurs Ordinateurs fonctionnant sous Windows. Le nombre maximal est régi par votre SQL Server ou Installation de Microsoft Access. Le client Dlister qui énumère les DLL sur un système s'exécute sur Windows 95 ou Windows 98, Windows NT 4.0 et Windows 2000. Le utilitaires d'affichage ont été développés sur Windows NT 4.0 et Windows 2000, et nécessite Microsoft Access ou Microsoft SQL Server. Il a été testé avec Microsoft Access 97 et versions ultérieures et SQL Server 6.5 et versions ultérieures.

Plus d'informations

Le fichier suivant est disponible pour téléchargement à partir du Microsoft Download Centre :

DUPS.exe
Date de publication : 14-Jan-2000

Pour plus d'informations sur le téléchargement Fichiers de Support Microsoft, cliquez sur le numéro ci-dessous pour afficher l'article dans la Base de connaissances Microsoft :
119591 Comment faire pour obtenir des fichiers de support technique Microsoft auprès des Services en ligne
Microsoft a analysé ce fichier contre les virus. Microsoft a utilisé le plus les logiciels de détection de virus récents qui était disponible à la date que le fichier a été validée. Le fichier est stocké sur des serveurs sécurisés qui aident à éviter toute modification non autorisée du fichier. Cet article et son code associé seront mis à jour périodiquement. Tous les commentaires sont les bienvenues et seront prises en compte dans les futures mises à jour. (Utilisez le lien submit dynamique dans le cadre de droite pour commentaire.)
Microsoft fournit des exemples de programmation à titre d'illustration uniquement, sans garantie expresse ou implicite, y compris, de manière non limitative, les garanties implicites de qualité marchande et/ou d'adéquation à un usage particulier. Cet article suppose que vous êtes familiarisés avec le langage de programmation présenté et les outils utilisés pour créer et déboguer des procédures. Les professionnels du support technique Microsoft peuvent vous expliquer la fonctionnalité d'une procédure particulière, mais ils ne modifieront pas ces exemples pour fournir des fonctionnalités supplémentaires ou créer des procédures pour répondre à vos besoins spécifiques.
Si votre expérience de programmation est limitée, vous souhaiterez peut-être contacter un partenaire certifié Microsoft ou les Services de conseil Microsoft. Pour plus d'informations, visitez ces sites Web Microsoft :

Microsoft certifié Partners- https://Partner.Microsoft.com/global/30000104

Services de conseil Microsoft- http://support.Microsoft.com/GP/advisoryservice

Pour plus d'informations sur les options de support qui sont disponibles et savoir comment contacter Microsoft, visitez le site Web de Microsoft à l'adresse suivante :http://support.Microsoft.com/default.aspx?scid=fh ;FR-FR;CNTACTMS Le package DUPS pouvant être utilisé sur un seul ordinateur ou à suivre l'historique de la DLL de chaque DLL sur le réseau. Il s'exécute sur Windows 95 Le mode Windows 2000 et dans sa plus simple expression n'a aucune dépendance. Le package DUPS comprend les trois utilitaires de C++ et plusieurs afficheurs de Visual Basic.

Si vous souhaitez uniquement comparer les DLL au moyen d'une application sur deux ordinateurs (ordinateur A et B), exécutez le programme Dlister.exe. Par défaut Dlister Crée un fichier dans le répertoire C:\ portant le nom Comp_DLL.txt où est Comp le nom de l'ordinateur exécutant Dlister. Vous pouvez également spécifier cette Dlister écrire dans une base de données, ou vous pouvez spécifier un autre répertoire dans lequel le fichier doit être créé. Il existe deux façons de substituer les valeurs par défaut des attributs Dlisters. Dlister et les visionneuses de Visual Basic obtenir cette clé de Registre :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\KB Samples\r1dllHell
Et les valeurs suivantes :
ConnectionString, fileTableDir
Vous pouvez utiliser l'applet de Visual Basic DllHell\C_clients\ATL4VB\VbregSetup pour définir ces valeurs, ou vous pouvez simplement exécuter Dlister et il crée des valeurs par défaut. Par exemple, si le paramètre ConnectString pour :
Provider=SQLOLEDB.1;Initial Catalog=dllHell;Data Source=dsc3_ts;
					
causes Dlister pour écrire des valeurs dans le SQL Server base de données dllHell, tandis que :
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\dllHell.mdb
					
utilise une base de données locale Microsoft Access.

La deuxième pour remplacer les valeurs par défaut consiste à définir les attributs dans le fichier DllHell.ini dans le répertoire Dlister.exe. Ces fichiers sont décompressés dans le répertoire DllHell\C_clients\Dlister\Release\.

Un fichier nommé xdllHell.ini est inclus dans l'échantillon avec une chaîne de connexion que vous pouvez modifier. (Renommer ce dllHell.ini Si vous souhaitez l'utiliser).

Si ordinateur A et l'ordinateur B qu'ont tous les deux installés, ActiveX Data Objects (ADO) la plus simple approche pour remplir la base de données dllHell consiste à définir la chaîne de connexion la base de données SQL Server ou Jet. Vous pouvez également exécuter Dlister dans un fichier texte mode puis utilisez l'utilitaire de C++ DllHell\C_clients\Dlister\readtxttbl\Release\DlgDtxt2DB.exe pour lire la sortie fichier texte dans la base de données DllHell. L'application MFC ReadTxtTbl est également utile pour la lecture dans le texte que les clients de données de messagerie vous. Vous devez vous inscrire les serveurs COM DUPS\C_clients\ATL4VB\r1RegMon\ReleaseMinDependency\r1RegMon.dll et DUPS\C_clients\ATL4VB\readDlls\R1readTxtMod\ReleaseMinDependency\R1readTxtMod.dll Pour utiliser les visionneuses de Visual Basic.

Vous pouvez activer les totaux de contrôle CRC par définition de la clé de Registre HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\KB ComputeCRC de Samples\r1dllHell sur 0 x 1 sur les systèmes exécutant Windows 2000. Une fois que vous Accédez à cette clé, vous pouvez l'ajouter à vos favoris. Les utilisateurs de Windows NT 4 doit accédez manuellement à cette clé.

Création de la base de données DllHell

SQL Server 7.0 est recommandé, mais Microsoft Access 2000 également Works. Pour créer la base de données DLLhell vous pouvez utiliser SQL Server Enterprise Manager Pour créer une base de données vide nommée DLLhell. À partir de l'Analyseur de requêtes SQL Server fenêtre, sélectionnez DLLhell à partir de la zone de liste déroulante base de données. Exécuter le Script DllHell\SQL\dllHellSchema.sql dans cette fenêtre et elle crée tous les tables nécessaires pour Dllhell.

Vous pouvez également exécuter les opérations suivantes commande dans l'Analyseur de requêtes SQL Server :
EXEC sp_attach_single_file_db 'DLLhell', 'DllHell\SQL\dllHell_Data.MDF'
				
Le code crée la base de données et toutes les tables.

Comparaison entre les DLL sur deux systèmes

Toutes les DLL sur les deux systèmes permettent de comparer le Visual cmpWithList Utilitaire de base dans le répertoire Dllhell\VBviewers\VBcmpList2.

Pour limiter les comparaisons DLL (généralement à ces DLL se charge une application cible) Vous devez également disposer d'un fichier texte (.txt) contenant les DLL que vous souhaitez comparer. Vous pouvez créer cette liste avec Depends ou un des nombreux outils (tels que ListDLLs et Process Explorer) à partir du site Web suivant :
http://technet.Microsoft.com/en-us/Sysinternals/default.aspx

À l'aide de cmpWithList

CmpWithList démarrage il affiche une liste d'ordinateurs dans le DLLhell base de données dans la zone de liste d'ordinateurs. Par défaut, les deux premiers ordinateurs dans la liste sont sélectionnés pour la comparaison. Pour modifier l'ordinateur cible, sélectionnez Il est dans la zone de liste et puis cliquez sur le bouton Modifier . Les zones d'édition ordi1 et Comp2 affichent quels ordinateurs vous compare.

Utilisez le contrôle de navigation de répertoire pour sélectionner le texte fichier contenant les noms de toutes les DLL que vous souhaitez comparer dans les deux systèmes. Double-clic sur le fichier texte la sélectionne.

Si vous ne le faites pas pour comparer les DLL dans certains répertoires (en général vous ne craignez pas les DLL dans winnt\system32\dllcache et WINNT\$ NtServicePackUninstall$), double-cliquez sur la ligne dans la grille. Vous serez invité à ajouter le répertoire à la _skipDir table. DLL dans le _skipDir ne sont pas considérés comme pour la comparaison.

Installation automatique de réseau DLL audit

Configuration de la planification sur les systèmes Windows 2000 :

Démarrer avec le fichier de commandes dllHell\rcomp.cmd. Modification de la variables d'environnement suivantes afin de refléter votre système :
  1. Dpath : Le répertoire sur le client où crée Dlister la liste des fichiers texte de DLL sur le client. La valeur par défaut est C:\temp\DLLhell\
  2. Comp.: Le nom de l'ordinateur client.
  3. ChangeFileLocation : Le chemin complet du réseau où la DLL fichier de différences doit être copié. Il s'agit du répertoire qui le HellsMonitor montres de service.
  4. ServerLst : Le chemin réseau dans lequel le répertoire C_clients de la DLLhell package se trouve.
Dans la barre des tâches, cliquez sur le bouton Démarrer , pointez sur programmes, sur Accessoires, pointez sur Outils système et puis cliquez sur Tâches planifiées.

Activer l'applet Ajouter une tâche planifiée . Accédez au répertoire local contenant le rcomp.cmd le fichier et sélectionnez-le. Après avoir sélectionné les options de l'Assistant présente, le rcomp.cmd fichier est ajouté à des tâches planifiées. La première fois que vous paramétrez le tâche planifiée, sélectionnez début temps 2 à 5 minutes à l'avenir, vous pouvez tester vos paramètres. Il est souvent pratique de ne pas commenter la commande pause afin que Vous pouvez voir toutes les erreurs qui se produisent.

Enregistrer le fichier de Service de surveillance

À partir de la Dllhell\C_clients\HellsMonitor\ReleaseUMinDependency Exécutez cette commande, qui inscrit le service de répertoire :
HellsMonitor /Service
				
La partie la plus importante est le client de moniteur. Il s'agit d'une interface utilisateur graphique qui Permet d'ajouter ou supprimer les répertoires à surveiller. Il vous permet également spécifier l'application à exécuter (avec un bouton Parcourir sous la main). Les copies système de surveillance, l'application est Dllhell\C_clients\Dlister\ReadTxtTblCmdLine\Debug\ReadTxtTblCmdLine.exe.

Pour ajouter un répertoire à surveiller, cliquez sur Ajouter. Cela ouvre une boîte de dialogue Parcourir répertoire dans lequel vous pouvez naviguer vers le répertoire que vous souhaitez surveiller. Pour supprimer un répertoire ou les répertoires sélectionner les répertoires que vous souhaitez supprimer, puis cliquez sur Supprimer. Pour spécifier l'application s'exécute soit taper au clavier ou Accédez à celui-ci. Si vous ne spécifiez pas un chemin d'accès, qu'il doit se trouver dans le chemin d'accès système quelque part. Ensuite, cliquez sur définir pour régler le moniteur pour exécuter cette application lorsqu'une modification est détecté.

Remarque: le jeu de bouton est uniquement activé lorsque vous modifiez l'application Pour exécuter à partir de ce qu'elle est actuellement définie. Le bouton Supprimer est activé uniquement lorsque vous avez choisis de supprimer des répertoires.

Références

Pour plus d'informations, consultez le site Web de Microsoft à l'adresse suivante :
« La fin de l'enfer des DLL »

Propriétés

Numéro d'article: 247957 - Dernière mise à jour: vendredi 28 juin 2013 - Version: 5.0
Mots-clés : 
kbdownload kbfile kbhowto kbmt KB247957 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu d'une traduction automatique réalisée par un logiciel Microsoft et non par un traducteur professionnel. Cette traduction automatique a pu aussi être révisée par la communauté Microsoft grâce à la technologie Community Translation Framework (CTF). Pour en savoir plus sur cette technologie, veuillez consulter la page http://support.microsoft.com/gp/machine-translation-corrections/fr. Microsoft vous propose en effet des articles traduits par des professionnels, des articles issus de traductions automatiques et des articles issus de traductions automatiques révisées par la communauté Microsoft, de manière à ce que vous ayez accès à tous les articles de notre Base de connaissances dans votre langue. Il est important de noter que les articles issus de la traduction automatique, y compris ceux révisés par la communauté Microsoft, peuvent contenir des erreurs de vocabulaire, de syntaxe ou de grammaire. Microsoft ne pourra être tenu responsable des imprécisions, erreurs, ainsi que de tout dommage résultant d?une traduction incorrecte du contenu ou de son utilisation par les clients.
La version anglaise de cet article est la suivante: 247957
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com