views:

286

answers:

2

I got an error during creating a installer for my web application(c#). The error is

Error 19 'msado20.tlb' should be excluded because its source file 'C:\Program Files\Common Files\system\ado\msado20.tlb' is under Windows System File Protection.

what does mean?

+1  A: 

You need to exclude the file from the installer.

From MSDN

The specified file is a protected system file on Windows 2000, Windows XP, and Windows Server 2003. Protected system files are usually installed via operating-system service packs or separate setup packages, such as Windows Media Player or Internet Explorer. Including this file in an installer may cause instability if installed on operating systems that do not support protected system files. For example, by installing a component such as stdole.tlb outside of the System folder and registering it, you will overwrite the registration for the component under system-file protection. When your application is uninstalled, the component installed by the application is removed and the component under system file protection is left in an unregistered state.

Bye.

RRUZ
A: 

Windows File Protection system stops important system files from getting over written. You installer doesn't want to be installing files like this.

It looks like the file in question is part of Microsoft ADO. So rather than installing this file via your installer you need to make it requirement that the version of ADO that your application needs is installed.

andynormancx