Artikel-ID: 831491 - Geändert am: Montag, 22. Januar 2007 - Version: 5.0

Fehlermeldungen mehrere "sind Systemdateien veraltet" bei der Installation einer Visual Basic 6.0-Anwendung

SystemtippDieser Artikel bezieht sich auf ein anderes Betriebssystem als das von Ihnen verwendete. Für Sie möglicherweise nicht relevante Artikelinhalte wurden deaktiviert.

Auf dieser Seite

Alles erweitern | Alles schließen

Problembeschreibung

Wenn Sie einer Microsoft Visual Basic 6.0-Anwendung, Paket Sie installieren mithilfe der Paket- und Weitergabe-Assistent auf einem Computer, auf dem Microsoft Windows 2000, Windows XP oder Windows Server 2003 ausgeführt wird, erhalten Sie folgende Fehlermeldung:
Setup kann nicht fortgesetzt werden, da einige Systemdateien auf Ihrem System nicht mehr aktuell sind. Klicken Sie auf 'OK', wenn Setup diese Dateien jetzt für Sie aktualisieren soll. Sie müssen Windows neu starten, bevor Sie das Setup wieder ausführen können. Klicken Sie auf 'Abbrechen', um Setup zu Beenden, ohne Systemdateien zu aktualisieren.
Wenn Sie auf OK , um die Dateien zu aktualisieren und Neustart klicken, erhalten Sie denselben Fehlermeldung beim Ausführen von Setup.exe, um die Installation abzuschließen.

Ursache

Dieses Problem tritt auf, wenn das Setup-Paket versucht, eine neuere Version einer Datei zu installieren, die durch die Windows-Dateischutz auf dem Betriebssystem geschützt ist. Wenn das Setup-Paket auf einem Computer mit Windows Server 2003 erstellt wurde, und das Setup-Paket enthält eine Datei, die durch die Windows-Dateischutz geschützt ist, tritt z. B. dieses Problem auf Computern, ist eine ältere Version der gleichen Datei und auf denen Windows XP oder Windows 2000 ausgeführt.

Wenn das Setup-Programm das Setup-Paket installiert, vergleicht das Installationsprogramm die Version der Datei, die bereits auf das Betriebssystem mit der Version der Datei ist, die in das Setup-Paket enthalten ist. Wenn die Datei, die in das Setup-Paket enthalten ist neuer als die Datei, die bereits auf dem Betriebssystem ist ist, ersetzt das Setup-Programm die Version der Datei, die auf dem Betriebssystem und fordert Sie anschließend mit der Meldung, dass das Installationsprogramm der Computer muss neu gestartet.

Nachdem die Datei ersetzt wurde, erkennt Windows-Dateischutz, dass die Datei wurde ersetzt, und kehrt dann wieder die ursprüngliche Version die Datei zurück. Nachdem das Setup-Programm neu gestartet und führt dann Setup.exe erneut aus, wird der Zyklus wiederholt.

Lösung

Um dieses Problem zu beheben, vergewissern Sie sich, dass das Setup-Paket nicht Systemdateien verteilt wird, die neuer als die Dateien auf dem Ziel-Betriebssystem. Verwenden Sie dazu die folgenden Verfahren.

Wenden Sie das neueste Servicepack für Visual Basic 6.0

Wenden Sie das neueste Servicepack für Visual Basic 6.0, auf dem Buildcomputer. Beginnend mit Visual Basic 6.0 Service Pack 4, befinden ältere Versionen der erforderlichen Systemdateien in den Redist Ordner auf dem Buildcomputer. Wenn der Paket- und Weitergabe-Assistent ein Paket assembliert, sucht es den Ordner Redist zuerst Abhängigkeiten. Daher verwenden neue Paket-Builds, die älteren Versionen die erforderlichen Systemdateien, die sich in den Redist-Ordner befinden. Auf diese Weise verteilt das Paket neuere Versionen von die erforderlichen Systemdateien. Der Ordner "Redist" befindet sich an folgendem Speicherort:
C:\Programme\Microsoft Visual Studio\VB98\Wizards\PDWizard\Redist
Um das neueste Visual Basic 6.0 Servicepack erhalten die folgende Microsoft-Website:
http://msdn2.microsoft.com/en-us/vstudio/aa718364.aspx (http://msdn2.microsoft.com/en-us/vstudio/aa718364.aspx)

Entfernen Sie häufig weitervertriebenen-Systemdateien aus dem Setuppaket

Stellen Sie sicher, dass Ihr Setuppaket nicht unnötige Systemdateien verteilen wird. Jede Visual Basic 6.0-Anwendung erfordert, dass die folgenden OLE-Automatisierung Systemdateien installiert werden auf Funktion. Diese Dateien sollte mit dem Setuppaket installiert werden. Wenn Sie Visual Basic 6.0 Service Pack 4 oder höher auf dem Buildcomputer anwenden, verpackt der Paket- und Weitergabe-Assistent ältere Versionen dieser Dateien aus dem Redist-Ordner, wie im vorherigen Abschnitt erläutert.
  • OLEPRO32.dll
  • OLEAUT32.dll
  • ASYCFILT.dll
  • STDOLE2.tlb
Außer diesen Dateien besteht normalerweise kein Grund zum Verteilen von Systemdateien mit einem Visual Basic 6.0-Setup-Paket. System Datei Weitervertrieb sollte nur mit Betriebssystem-Servicepacks oder Hotfixes ausgeführt werden.

Hinweis: MSVBVM60.dll ist auch eine erforderliche Datei für Visual Basic-Anwendungen-Funktion. Diese Datei ist eine Systemdatei nicht und ist nicht Teil der Windows-Dateischutz.

Systemdateien, die von Ihr verteilbare Paket ausgeschlossen werden sollen

Wenn Sie dem Paket- und Weitergabe-Assistenten zum Packen Ihrer Anwendung verwenden, überprüfen Sie die Liste der Dateien, die auf dem Bildschirm enthaltene Dateien verteilt wird, sind. Deaktivieren Sie das Kontrollkästchen neben den folgenden Dateien, wenn Sie aufgelistet sind:
  • MSVCRT.dll
  • MSVCRT20.dll
  • MSVCRT40.dll
  • MSVCIRT.dll
  • Mfc42.dll
  • MFC40.dll
Eine gute Möglichkeit richtigen ist ein Setup-Paket, das Setup-Paket verwerfen und erstellen ein neues Setuppaket mithilfe der Paket- und Weitergabe-Assistent, nachdem Sie die Prozeduren, die in den vorherigen Abschnitten behandelt werden.

Auch, um sicherzustellen, dass der Paket- und Weitergabe-Assistent zuerst versucht, Dateien aus den Redist-Ordner finden, führen Sie kein Verpackungsskript beim Sie der Paket- und Weitergabe-Assistent starten auswählen. Der Paket- und Weitergabe-Assistent versucht, die Dateien vom gleichen Speicherort zu suchen, die es während der vorherigen Verpackung Versuch verwendet. Zwar die richtige Version einer Datei im Ordner "Redist" befinden kann, kann der Paket- und Weitergabe-Assistent nicht verwenden Sie die richtige Version der Datei Wenn Sie die Datei von einem anderen Speicherort während vorherigen Verpackung versucht verpackt.

Wenn Sie dieses Problem in einem Setuppaket, die bereits erstellt korrigieren müssen, können Sie die Datei "Setup.lst" Installation von der fehlerhaften Systemdateien verhindert bearbeiten. Gehen Sie hierzu folgendermaßen vor:
  1. Öffnen Sie die "Setup.lst"-Datei in einem Texteditor wie Editor.
  2. Suchen Sie die [Bootstrap Files] Abschnitt und die [ PackageName Dateien] Abschnitt .

    Hinweis: In dieser Schritt ist PackageName ein Platzhalter für den aktuellen Paketnamen.
  3. Überprüfen Sie, wenn diese Abschnitte enthalten mindestens eine der Dateien, die in den Dateien"System" aufgeführt sind, die häufig mit Visual Basic-Pakete verteilt werden Abschnitt. Wenn dies der Fall ist, entfernen Sie den Eintrag, und dann neu nummerieren Sie der verbleibenden Datei Einträge im Abschnitt.
  4. Speichern Sie die Datei, und schließen Sie die Datei.
  5. Stellen Sie sicher, dass die geänderte Datei "Setup.lst" im selben Ordner wie die Datei Setup.exe und die CAB-Datei für das Setuppaket befindet.

    Das nächste Mal, das Sie das Setup-Programm ausführen wird das Paket nicht versucht, die Dateien installiert, die Sie in "Setup.lst" entfernt.

Status

Es handelt sich hierbei um ein beabsichtigtes Verhalten.

Informationsquellen

Weitere Informationen finden Sie im folgenden s s Artikel der Microsoft Knowledge Base: Artikel
222193   (http://support.microsoft.com/kb/222193/ ) Beschreibung des Features "Windows-Dateischutz"
330314   (http://support.microsoft.com/kb/330314/ ) PRB: Der Computer kein Neustart nach Sie eine Microsoft Visual Basic 6.0-Anwendung installieren, die eine MSVCRT.dll-Datei enthält

Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Visual Basic Enterprise Edition for Windows 6.0
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 6.0 Learning Edition
Keywords: 
kbmt kbpdwizard kbprb kbdebug kbdeployment KB831491 KbMtde
Maschinell übersetzter ArtikelMaschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 831491  (http://support.microsoft.com/kb/831491/en-us/ )
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.