ESEMPIO: Utilizzo di DUPS.exe per risolvere i problemi di compatibilitÓ DLL

Traduzione articoli Traduzione articoli
Identificativo articolo: 247957
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

Lo strumento Risolutore problema universale DLL (DUPS.exe) Ŕ un esempio che contiene tutte le utilitÓ documentate nel gennaio 2000 Microsoft Developer Network (MSDN) articolo "Fine del" DLL hell "." Controllare che Articolo MSDN prima di leggere questo articolo.

Il pacchetto DUPS Ŕ un insieme di utilitÓ che Ŕ possibile utilizzare per tenere traccia e confrontare le versioni DLL in pi¨ Computer basati su Windows. Il numero massimo Ŕ regolato di SQL Server o Installazione di Microsoft Access. Il client Dlister che enumera le DLL in un sistema viene eseguito su Windows 95 o Windows 98, Windows NT 4.0 e Windows 2000. Il utilitÓ di visualizzazione sono stati sviluppati in Windows NT 4.0 e Windows 2000, e Ŕ necessario Microsoft Access o Microsoft SQL Server. ╚ stato testato con Microsoft Access 97 e versioni successive e SQL Server 6.5 e versioni successive.

Informazioni

Il file seguente Ŕ disponibile per il download da Microsoft Download Center:

DUPS.exe
Data di rilascio: 14-Gen-2000

Per ulteriori informazioni su come scaricare File di supporto Microsoft, fare clic sul numero di articolo riportato di seguito per visualizzare l'articolo nella Microsoft Knowledge Base:
119591 Come ottenere file di supporto Microsoft dai servizi online
Microsoft ha analizzato questo file per individuare eventuali virus. Microsoft ha utilizzato al meglio software antivirus aggiornato che era disponibile alla data che il file. Ŕ stato registrato. Il file viene salvato su server con protezione avanzata che consentono di impedire modifiche non autorizzate al file. In questo articolo e il relativo codice verrÓ aggiornati periodicamente. Tutti i commenti sono Benvenuti e verranno considerati in futuro aggiornamenti. (Utilizzare i collegamenti consigliati Invia nel riquadro di destra per aggiunta di commenti.)
Microsoft fornisce esempi di programmazione a scopo puramente illustrativo, senza alcuna garanzia espressa o implicita, comprese, senza limitazioni, le garanzie implicite di commerciabilitÓ o idoneitÓ per uno scopo particolare. In questo articolo si presuppone che si abbia familiaritÓ con il linguaggio di programmazione in questione e gli strumenti utilizzati per creare ed eseguire il debug di procedure. Professionisti del supporto tecnico Microsoft possono spiegare la funzionalitÓ di una particolare procedura, ma in nessun caso a modificare questi esempi per fornire funzionalitÓ aggiuntive o creare procedure atte a soddisfare esigenze specifiche.
Se si dispone di esperienza di programmazione limitata, Ŕ possibile contattare un Microsoft Certified Partner o i servizi di consulenza Microsoft. Per ulteriori informazioni, visitare i siti Web Microsoft:

Microsoft certificata partner- https://partner.microsoft.com/Global/30000104

Servizi di consulenza Microsoft- http://support.microsoft.com/gp/advisoryservice

Per ulteriori informazioni sulle opzioni di supporto disponibili e su come contattare Microsoft, visitare il seguente sito Web Microsoft:http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS Pu˛ essere utilizzato su un singolo computer o utilizzato per il pacchetto DUPS tenere traccia della cronologia DLL di ogni DLL della rete. ╚ in esecuzione Windows 95 ModalitÓ di Windows 2000 e nella sua forma pi¨ semplice non ha alcuna dipendenza. Il pacchetto DUPS Ŕ costituito da tre utilitÓ di C++ e pi¨ visualizzatori di Visual Basic.

Se si desidera confrontare le DLL che utilizza un'applicazione su due computer (computer A e B), eseguire il programma Dlister.exe. Per impostazione predefinita Dlister Crea un file nella directory C:\ con il nome Comp_DLL.txt, dove Ŕ Comp il nome del computer che esegue Dlister. ╚ inoltre possibile specificare tale Dlister scrivere in un database oppure Ŕ possibile specificare un'altra directory in cui il file. deve essere creato. Esistono due modi per eseguire l'override delle impostazioni predefinite di attributo Dlisters. Dlister e i visualizzatori di Visual Basic Ŕ necessario ottenere la chiave del Registro di sistema:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\KB Samples\r1dllHell
E i seguenti valori:
ConnectionString, fileTableDir
╚ possibile utilizzare l'applet di Visual Basic DllHell\C_clients\ATL4VB\VbregSetup per impostare questi valori oppure Ŕ possibile eseguire semplicemente Dlister e crea i valori predefiniti. Ad esempio, impostando il parametro ConnectString in:
Provider=SQLOLEDB.1;Initial Catalog=dllHell;Data Source=dsc3_ts;
					
cause Dlister per scrivere i valori di SQL Server dllHell database, mentre:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\dllHell.mdb
					
utilizza un database locale di Microsoft Access.

Il secondo modo per eseguire l'override dei valori predefiniti Ŕ impostando gli attributi file DllHell.ini nella directory Dlister.exe. Questi file vengono decompressi in la directory DllHell\C_clients\Dlister\Release\.

Un file denominato. xdllHell.ini Ŕ incluso nel campione con una stringa di connessione Ŕ possibile modificare. (Se si desidera utilizzarlo, rinominare questo dllHell.ini.)

Se computer A e B che con ActiveX Data Objects (ADO) Ŕ installato, la pi¨ semplice approccio per popolare il database dllHell consiste nell'impostare la stringa di connessione il database di SQL Server o Jet. In alternativa, Ŕ possibile eseguire Dlister in file di testo modalitÓ quindi utilizzare l'utilitÓ di C++ DllHell\C_clients\Dlister\readtxttbl\Release\DlgDtxt2DB.exe per leggere l'output file di testo nel database DllHell. ╚ l'applicazione MFC ReadTxtTbl utile per la lettura del testo che i client di dati di posta elettronica Ŕ. ╚ necessario registrare i server COM DUPS\C_clients\ATL4VB\r1RegMon\ReleaseMinDependency\r1RegMon.dll e DUPS\C_clients\ATL4VB\readDlls\R1readTxtMod\ReleaseMinDependency\R1readTxtMod.dll Per utilizzare i visualizzatori di Visual Basic.

╚ possibile attivare i checksum CRC da l'impostazione della chiave del Registro di sistema HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\KB ComputeCRC Samples\r1dllHell su 0x1 nei sistemi che eseguono Windows 2000. Dopo aver passare a questa chiave, Ŕ possibile aggiungere ai Preferiti. Gli utenti di Windows NT 4 deve spostarsi manualmente questa chiave.

Creazione del Database DllHell

SQL Server 7.0 Ŕ consigliabile, ma Microsoft Access 2000 inoltre Works. Per creare il database di DLLhell Ŕ possibile utilizzare SQL Server Enterprise Manager Per creare un database vuoto denominato DLLhell. In SQL Server Query Analyzer finestra, selezionare DLLhell dalla casella di riepilogo a discesa delle database. Eseguire il Script DllHell\SQL\dllHellSchema.sql in questa finestra e crea tutte le tabelle necessarie per Dllhell.

In alternativa, Ŕ possibile eseguire le seguenti operazioni comando in SQL Server Query Analyzer:
EXEC sp_attach_single_file_db 'DLLhell', 'DllHell\SQL\dllHell_Data.MDF'
				
Il codice crea il database e tutte le tabelle.

Confronto tra le DLL su due sistemi

Per confrontare tutte le DLL in uso di due sistemi di Visual cmpWithList UtilitÓ di base nella directory Dllhell\VBviewers\VBcmpList2.

Per limitare i confronti DLL (in genere per solo tali DLL viene caricata un'applicazione di destinazione) Ŕ inoltre necessario disporre di un file di testo (txt) contenente le DLL che si desidera confrontare. ╚ possibile creare l'elenco dipendente o uno dei numerosi strumenti (ad esempio ListDLLs e Process Explorer) dal seguente sito Web:
http://technet.microsoft.com/en-us/sysinternals/default.aspx

Utilizzo di cmpWithList

Quando cmpWithList avvia mostra un elenco di computer il Database DLLhell nella casella di riepilogo del computer. Per impostazione predefinita, i primi due computer Nell'elenco sono selezionati per il confronto. Per modificare il computer di destinazione, selezionare che nella casella di riepilogo e quindi selezionare il pulsante Modifica . Le caselle di modifica Comp1 e Comp2 mostrano quali computer Ŕ verranno confrontati.

Utilizzare il controllo di spostamento di directory per selezionare il testo file contenenti i nomi di tutte le DLL che si desidera confrontare nelle due sistemi. Doppio clic sul file di testo per selezionarlo.

In caso contrario per confrontare le DLL in alcune directory (in genere non Ŕ rilevante sulle DLL in winnt\system32\dllcache e WINNT\$ NtServicePackUninstall$) fare doppio clic su la riga nella griglia. VerrÓ richiesto di aggiungere la directory per il _skipDir tabella. DLL nel _skipDir non sono considerate per il confronto.

L'installazione automatica di rete DLL controllo

Impostare la pianificazione nei sistemi Windows 2000:

Iniziare con il file di comando dllHell\rcomp.cmd. Modifica il seguenti variabili di ambiente in modo da riflettere il sistema:
  1. Dpath: La directory sul client in cui crea Dlister l'elenco di file di testo delle DLL sul client. Il valore predefinito Ŕ C:\temp\DLLhell\
  2. COMP: Il nome del computer client.
  3. ChangeFileLocation: Il percorso di rete completo dove la DLL deve essere copiato il file delle differenze. Questa Ŕ la directory che il HellsMonitor espressioni di controllo servizio.
  4. ServerLst: Il percorso di rete dove la directory C_clients del DLLhell pacchetto si trova.
Sulla barra delle applicazioni, fare clic sul pulsante Start , scegliere programmi, Accessori, UtilitÓ di sistema e quindi fare clic su Operazioni pianificate.

Attivare l'applet Aggiungi operazione pianificata . Passare alla directory locale contenente la rcomp.cmd file e selezionarlo. Dopo aver selezionato le opzioni presenta la procedura guidata, il rcomp.cmd file viene aggiunto ai processi pianificati. La prima volta che si imposta il processo pianificato, selezionare inizio ora 2-5 minuti in futuro in modo che Ŕ possibile eseguire il test le impostazioni. Spesso Ŕ utile rimuovere il comando pausa in modo che Ŕ possibile visualizzare eventuali errori verificatisi.

Registrare il File di monitoraggio del servizio

Dal Dllhell\C_clients\HellsMonitor\ReleaseUMinDependency directory di eseguire questo comando, che registra il servizio:
HellsMonitor /Service
				
La parte pi¨ importante Ŕ il client monitor. Si tratta di una GUI che Consente di aggiungere o rimuovere le directory da monitorare. Consente inoltre di specificare l'applicazione da eseguire (con un pulsante Sfoglia utile). Per la DUPS sistema di monitoraggio, l'applicazione Ŕ Dllhell\C_clients\Dlister\ReadTxtTblCmdLine\Debug\ReadTxtTblCmdLine.exe.

Per aggiungere una directory da monitorare, fare clic su Aggiungi. VerrÓ visualizzata una finestra di dialogo Sfoglia directory dove Ŕ possibile passare a la directory che si desidera monitorare. Per rimuovere una directory o directory selezionare le directory che si desidera rimuovere e quindi fare clic su Rimuovi. Per specificare l'applicazione da eseguire in digitare o spostarsi su di esso. Se non si specifica un percorso che deve essere nel percorso di sistema in un punto. Successivamente, fare clic su Set per impostare il monitor per eseguire tale applicazione quando una modifica rilevato.

Nota: il tasto set Ŕ attivato solo quando si modifica l'applicazione Per eseguire in base a quanto Ŕ impostato. Il pulsante Rimuovi Ŕ abilitato solo quando sono presenti directory selezionata da rimuovere.

Riferimenti

Per ulteriori informazioni, vedere il seguente sito Web Microsoft:
"La fine di" DLL hell ""

ProprietÓ

Identificativo articolo: 247957 - Ultima modifica: venerdý 28 giugno 2013 - Revisione: 5.0
Chiavi:á
kbdownload kbfile kbhowto kbmt KB247957 KbMtit
Traduzione automatica articoli
IMPORTANTE: il presente articolo Ŕ stato tradotto tramite un software di traduzione automatica di Microsoft ed eventualmente revisionato dalla community Microsoft tramite la tecnologia CTF (Community Translation Framework) o da un traduttore professionista. Microsoft offre articoli tradotti manualmente e altri tradotti automaticamente e rivisti dalla community con l?obiettivo di consentire all'utente di accedere a tutti gli articoli della Knowledge Base nella propria lingua. Tuttavia, un articolo tradotto automaticamente, anche se rivisto dalla community, non sempre Ŕ perfetto. Potrebbe contenere errori di vocabolario, di sintassi o di grammatica. Microsoft declina ogni responsabilitÓ per imprecisioni, errori o danni causati da una traduzione sbagliata o dal relativo utilizzo da parte dei clienti. Microsoft aggiorna frequentemente il software e gli strumenti di traduzione automatica per continuare a migliorare la qualitÓ della traduzione.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 247957
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

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