Beispiel: Verwenden von DUPS.exe, um DLL-Kompatibilitätsprobleme zu beheben

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 247957
Alles erweitern | Alles schließen

Auf dieser Seite

Zusammenfassung

Das Tool DLL Universal Problem Solver (DUPS.exe) ist ein Beispiel, das die Dienstprogramme, die im Januar 2000 dokumentiert enthält Microsoft Developer Network (MSDN)-News-Artikel "Das Ende des DLL-Hölle". Überprüfen Sie, dass MSDN-Artikel vor dem Lesen dieses Artikels.

DUPS-Paket ist eine Gruppe Dienstprogramme, die Sie verwenden können, zu verfolgen und vergleichen die DLL-Versionen auf mehreren Windows-basierten Computern. Die maximale Anzahl richtet sich nach Ihrer SQL Server oder Microsoft Access-Installation. Der Dlister-Client, der die DLLs auf listet ein System läuft auf Windows 95 oder Windows 98, Windows NT 4.0 und Windows 2000. Die Anzeige-Utilitys auf Windows NT 4.0 und Windows 2000 entwickelt wurden und Microsoft Access oder Microsoft SQL Server erforderlich. Es wurde mit getestet. Microsoft Access 97 und höher und SQL Server 6.5 und höher.

Weitere Informationen

Die folgende Datei steht zum Download aus dem Microsoft Download Center:

DUPS.exe
Datum der Freigabe: Jan-14-2000

Weitere Informationen zum Herunterladen Microsoft Support-Dateien, klicken Sie auf die folgende Artikelnummer klicken, um den Artikel in der Microsoft Knowledge Base:
119591 So erhalten Sie Microsoft Support-Dateien im Internet
Microsoft hat diese Datei auf Viren überprüft. Die von Microsoft verwendeten aktuelle Virenerkennungssoftware, die am Tag verfügbar war, die die Datei gebucht wurde. Die Datei wird auf Servern mit verstärkter Sicherheit gespeichert, die an unterstützen verhindern Sie nicht autorisierten Änderungen an der Datei. In diesem Artikel und den zugehörigen Code werden aktualisiert in regelmäßigen Abständen. Alle Kommentare sind Willkommen und werden in Zukunft berücksichtigt aktualisiert. (Verwenden Sie den Submit-Hotlink im rechten Frame für kommentieren.)
Microsoft bietet Programmierbeispiele lediglich zur Veranschaulichung, ohne Gewährleistung entweder ausdrücklich oder konkludent, einschließlich, aber nicht beschränkt auf konkludente Garantien der Handelsüblichkeit und/oder Eignung für einen bestimmten Zweck. In diesem Artikel wird davon ausgegangen, dass Sie mit der vorgestellten Programmiersprache und den zum Erstellen und Debuggen von Prozeduren verwendeten Tools vertraut sind. Microsoft-Supportmitarbeiter können der Erläuterung der Funktionalität bestimmter Prozeduren helfen werden, jedoch sie nicht verändern diese Beispiele, um eine erweiterte Funktionalität oder Prozeduren entwickeln Ihre speziellen Anforderungen zugeschnitten.
Wenn Sie über begrenzte Programmiererfahrungen verfügen, empfiehlt es sich, einen Microsoft Certified Partner oder Microsoft Advisory Services zu kontaktieren. Weitere Informationen finden Sie auf dieser Microsoft-Websites:

Microsoft Certified Partner- https://Partner.Microsoft.com/Global/30000104

Microsoft Advisory Services- http://support.Microsoft.com/gp/advisoryservice

Weitere Informationen zu den Supportoptionen, die verfügbar sind, und Informationen zur Kontaktaufnahme mit Microsoft finden Sie auf der folgenden Microsoft-Website:http://support.microsoft.com/contactus/?ws=support Das Paket DUPS kann verwendet, um oder auf einem einzelnen Computer verwendet werden Verfolgen Sie die DLL-Geschichte der jede DLL im Netzwerk. Es läuft unter Windows 95 Windows 2000 und in seiner einfachsten Form Modus hat keine Abhängigkeiten. Das Paket DUPS besteht aus drei C++-Dienstprogramme und mehrere Visual Basic-Viewer.

Wenn Sie nur die DLLs vergleichen möchten, ist eine Anwendung auf zwei Computern verwenden Führen Sie (Computer A und Computer B), das Dlister.exe-Programm. In der Standardeinstellung Dlister erstellt eine Datei im Verzeichnis mit dem Namen Comp_DLL.txt, in denen Comp ist C:\ der Name des Computers mit Dlister. Sie können auch angeben, dass Dlister Schreiben in eine Datenbank, oder Sie können ein anderes Verzeichnis angeben, in dem die Datei sollte erstellt werden. Es gibt zwei Möglichkeiten, Dlisters-Attribut Standardwerte zu überschreiben. Dlister und den Visual Basic-Viewern erhalten diesen Registrierungsschlüssel:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\KB Samples\r1dllHell
Und die folgenden Werte:
ConnectionString, fileTableDir
Sie können das Visual Basic-Applet verwenden. DllHell\C_clients\ATL4VB\VbregSetup zum Festlegen dieser Werte oder Sie können einfach ausführen. Dlister und erstellt die Standardwerte. Beispiel: Wenn die Zeichenfolge Zu:
Provider=SQLOLEDB.1;Initial Catalog=dllHell;Data Source=dsc3_ts;
					
bewirkt, dass zum Schreiben von Werten in der SQL Server-Dlister DllHell-Datenbank, während:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\dllHell.mdb
					
verwendet eine lokale Microsoft Access-Datenbank.

Die zweite Möglichkeit, die Standardwerte überschreiben, wird durch Festlegen der Attribute der Datei DllHell.ini im Verzeichnis Dlister.exe. Diese Dateien werden extrahiert, in das Verzeichnis DllHell\C_clients\Dlister\Release\.

Eine Datei namens xdllHell.ini ist in der Probe mit einer Verbindungszeichenfolge enthalten, die Sie ändern. (Benennen Sie diese dllHell.ini, wenn Sie es verwenden möchten.)

Wenn Computer A und Computer B beide ActiveX Data Objects (ADO) installiert haben, haben die einfachste Ansatz für die DllHell-Datenbank aufgefüllt wird, legen Sie die Verbindungszeichenfolge auf der SQL Server oder Jet-Datenbank. Alternativ können Sie Dlister in Text-Datei ausführen. Modus dann verwenden C++-Dienstprogramm DllHell\C_clients\Dlister\readtxttbl\Release\DlgDtxt2DB.exe die Ausgabe lesen Textdatei in die Datenbank DllHell. Die ReadTxtTbl-MFC-Anwendung ist auch nützlich für das Lesen in den Text, den Daten-Clients, die Sie per e-mail. Sie müssen registrieren COM-Servern DUPS\C_clients\ATL4VB\r1RegMon\ReleaseMinDependency\r1RegMon.dll und DUPS\C_clients\ATL4VB\readDlls\R1readTxtMod\ReleaseMinDependency\R1readTxtMod.dll die Visual Basic-Viewer verwenden.

Sie können die CRC-Prüfsummen von aktivieren. Festlegen des Registrierungsschlüssels HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\KB Samples\r1dllHell-ComputeCRC auf 0 x 1 auf Systemen mit Windows 2000. Wenn Sie Navigieren Sie zu diesem Schlüssel, können Sie es zu Ihren Favoriten hinzufügen. Benutzer von Windows NT 4 müssen Navigieren Sie manuell diesen Schlüssel.

Erstellen der Datenbank DllHell

SQL Server 7.0, aber Microsoft Access 2000 empfiehlt sich außerdem funktioniert. Zum Erstellen der DLLhell-Datenbank können Sie SQL Server Enterprise Manager verwenden. Erstellen Sie eine leere Datenbank mit dem Namen DLLhell. Im SQL Server Query Analyzer Fenster, wählen Sie DLLhell aus der Datenbank Dropdown-Listenfeld. Führen Sie die DllHell\SQL\dllHellSchema.sql-Skript in diesem Fenster und erstellt alle die Tabellen für Dllhell erforderlich sind.

Alternativ können Sie die folgenden ausführen Befehl in SQL Server Query Analyzer:
EXEC sp_attach_single_file_db 'DLLhell', 'DllHell\SQL\dllHell_Data.MDF'
				
Der Code erstellt die Datenbank und alle Tabellen.

Vergleichen die DLLs auf beiden Systemen

Alle DLLs auf zwei Systeme verwenden die Visual CmpWithList vergleichen Grundlegende Dienstprogramm im Verzeichnis Dllhell\VBviewers\VBcmpList2.

Beschränken die DLL Vergleiche (i. d. r. nur diese eine Zielanwendung lädt DLLs) Sie müssen auch eine Textdatei (.txt), mit der DLLs, die Sie vergleichen möchten. Sie können diese Liste mit Abhängigkeiten oder verschiedene Tools (z. B. ListDLLs erstellen. und Process Explorer) von der folgenden Website:
http://technet.Microsoft.com/en-US/Sysinternals/default.aspx

Mithilfe von cmpWithList

Wenn CmpWithList startet es zeigt eine Liste der Computer in der DLLhell-Datenbank in der Listbox Computern. Standardmäßig werden die ersten beiden Computer in der Liste für den Vergleich ausgewählt. Wählen Sie zum Ändern des Zielcomputers es in das ListBox-Steuerelement und wählen Sie dann die Schaltfläche Ändern . Die Bearbeitungsfelder Comp1 und Comp2 anzeigen, welche Computer Sie wird zu vergleichen.

Verwenden Sie das Verzeichnis Datensatznavigations-Steuerelement, um Text zu markieren Datei, die Namen aller DLLs enthalten soll, die Sie für die zwei vergleichen möchten Systeme. Doppelklick auf die Textdatei wird ausgewählt.

Wenn Sie nicht DLLs in bestimmte Verzeichnisse vergleichen möchten (in der Regel Sie kümmern sich nicht über DLLs Doppelklicken Sie im winnt\system32\dllcache und WINNT\$ NtServicePackUninstall$) auf die Zeile im Raster. Sie werden aufgefordert die _skipDir das Verzeichnis hinzu Tabelle. DLLs in den _skipDir gelten nicht für den Vergleich.

Installieren von Netzwerk-DLL für automatische Überwachung

Einrichten der Zeitplan auf Windows 2000-Systemen:

Beginnen Sie mit der dllHell\rcomp.cmd-Befehlsdatei. Änderung der Ihr System entsprechend folgenden Umgebungsvariablen:
  1. Dpath: Das Verzeichnis auf dem Client, in dem Dlister erstellt die Text-Datei-Liste der Dlls auf dem Client. Der Standardwert ist C:\temp\DLLhell\
  2. COMP: Der Name des Clientcomputers.
  3. ChangeFileLocation: Vollständiger Netzwerkpfad, in dem die DLL Differenzdatei sollten kopiert werden. Dies ist das Verzeichnis, das HellsMonitor Dienst überwacht.
  4. ServerLst: Der Netzwerkpfad, in dem Verzeichnis C_clients Paket befindet, der die DLLhell erhalten.
Klicken Sie auf der Taskleiste auf die Schaltfläche Start , zeigen Sie auf Programme, zeigen Sie auf Zubehör, zeigen Sie auf Systemprogramme , und klicken Sie dann auf Geplante Tasks.

Aktivieren Sie das Applet Geplanten Task hinzufügen . Wechseln Sie in das lokale Verzeichnis mit der rcomp.cmd Datei, und wählen Sie ihn. Nach dem Auswählen der Options der Assistent bietet, die rcomp.cmd-Datei wird mit den geplanten Aufträgen hinzugefügt. Beim ersten Sie von Einrichten der geplanter Auftrag Zeit aktivieren Sie das 2 bis 5 Minuten später so können Sie testen Ihre Einstellungen. Es ist oft günstig, kommentieren den Befehl anhalten, damit Sie können alle Fehler, die auftreten, finden Sie unter.

Registrieren Sie die Datei Überwachungsdienst

Aus der Dllhell\C_clients\HellsMonitor\ReleaseUMinDependency Führen Sie diesen Befehl, die den Dienst registriert Verzeichnis:
HellsMonitor /Service
				
Der wichtigste Teil ist der Monitor-Client. Dies ist eine grafische Benutzeroberfläche, ermöglicht das Hinzufügen oder entfernen Sie die Verzeichnisse überwachen. Außerdem können Sie auf Geben Sie die Anwendung ausführen (mit einem handy Durchsuchen-Schaltfläche). Für den DUPS Monitoring-System, ist die Anwendung Dllhell\C_clients\Dlister\ReadTxtTblCmdLine\Debug\ReadTxtTblCmdLine.exe.

Um eine zu überwachende Verzeichnis hinzuzufügen, klicken Sie auf Hinzufügen. Daraufhin wird ein Dialogfeld für Verzeichnis durchsuchen, in dem Sie wechseln können das Verzeichnis, die, das Sie überwachen möchten. So entfernen Sie ein Verzeichnis oder Verzeichnisse auswählen die Verzeichnisse, die Sie entfernen möchten und klicken Sie dann auf Entfernen. Um die Ausführung die Anwendung geben Sie entweder in oder Suchen sie nach. Wenn Sie keinen Pfad angeben, muss es im Systempfad werden an einer Stelle. Klicken Sie anschließend zum Festlegen des Monitors diese Anwendung ausführen, wenn die Änderung festlegen erkannt.

Hinweis: die Schaltfläche "festlegen" ist nur aktiviert, wenn das Programm zu ändern zum Ausführen von dem, was ist er derzeit festgelegt. Die Schaltfläche "entfernen" aktiviert nur, wenn Sie haben die Verzeichnisse, die zum Entfernen ausgewählt.

Informationsquellen

Weitere Informationen finden Sie unter der folgenden Microsoft-Website:
"Das Ende der DLL-Hölle"

Eigenschaften

Artikel-ID: 247957 - Geändert am: Freitag, 28. Juni 2013 - Version: 5.0
Keywords: 
kbdownload kbfile kbhowto kbmt KB247957 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell übersetzt und wird dann möglicherweise mithilfe des Community Translation Framework (CTF) von Mitgliedern unserer Microsoft Community nachbearbeitet. Weitere Informationen zu CTF finden Sie unter http://support.microsoft.com/gp/machine-translation-corrections/de.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 247957
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

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