2009-08-24 2 views
6

Beim Erstellen eines Installationsprogramms für meine Webanwendung (C#) ist ein Fehler aufgetreten. Der Fehler liegtQuelldatei X ist unter Windows-System Dateischutz in C#?

Fehler 19 'msado20.tlb' sollte ausgeschlossen werden, da seine Quelldatei 'C: \ Programme \ Gemeinsame Dateien \ system \ ado \ msado20.tlb' unter Windows System File Protection ist.

was bedeutet?

Antwort

6

Sie müssen die Datei vom Installationsprogramm ausschließen.

Von MSDN

Die angegebenen Datei ist eine geschützte Systemdatei unter Windows 2000, Windows XP und Windows Server 2003. Geschützte Systemdateien in der Regel über Betriebssystem-Service Pack oder separate Setup-Pakete, wie Windows installiert sind Media Player oder Internet Explorer. Die Installation dieser Datei in einem Installationsprogramm kann zu Instabilität führen, wenn sie auf Betriebssystemen installiert wird, die geschützte Systemdateien nicht unterstützen. Wenn Sie beispielsweise eine Komponente wie "stdole.tlb" außerhalb des Systemordners installieren und diese registrieren, überschreiben Sie die Registrierung für die Komponente im Systemdateischutz. Wenn Ihre Anwendung deinstalliert wird, wird die von der Anwendung installierte Komponente entfernt und die Komponente unter dem Systemdateischutz ist in einem nicht registrierten Zustand belassen.

Tschüss.

+0

Es gibt ein Problem mit diesem System, da Dateien unter Windows System File Protection systemabhängig sind. Unsere Dev-Maschinen haben zum Beispiel keine msxml6.dll unter Schutz, aber unser Build-Rechner führt diese Datei aus und erkennt sie als Abhängigkeit. Das heißt, wenn unsere Dev-Maschinen eine Änderung an einem Setup-Projekt vornehmen, wird der msxml6.dll-Ausschluss WIPE, was unsere Builds zerstört. – Shiv

0

Windows-Dateischutzsystem verhindert, dass wichtige Systemdateien überschrieben werden. Ihr Installationsprogramm möchte solche Dateien nicht installieren.

Es scheint, dass die fragliche Datei Teil von Microsoft ADO ist. Anstatt diese Datei über Ihr Installationsprogramm zu installieren, müssen Sie daher sicherstellen, dass die von Ihrer Anwendung benötigte Version von ADO installiert ist.