2009-08-24 91 views
6

在为我的Web应用程序(c#)创建安装程序时出现错误。错误是源文件X在c#下的Windows系统文件保护下?

错误19'msado20.tlb'应被排除,因为它的源文件'C:\ Program Files \ Common Files \ system \ ado \ msado20.tlb'在Windows系统文件保护下。

是什么意思?

回答

6

您需要从安装程序中排除该文件。

从MSDN

指定的文件是2003年受保护的系统文件通常是通过操作系统的服务包或独立的安装包,如Windows安装在Windows 2000,Windows XP中,和Windows Server受保护的系统文件媒体播放器或Internet Explorer。如果将此文件安装在不支持受保护系统文件的操作系统上,则将该文件包含在安装程序中可能会导致不稳定。例如,通过在System文件夹外安装诸如stdole.tlb之类的组件并进行注册,您将在系统文件保护下覆盖该组件的注册。卸载应用程序后,将删除应用程序安装的组件,并且系统文件保护下的组件为 ,并保留未注册状态。

再见。

+0

此系统存在问题,因为Windows系统文件保护下的文件与系统有关。我们的开发机器在保护下没有msxml6.dll,但是我们的构建机器会检测这个文件为依赖项。这意味着如果我们的开发机器签入对安装项目的更改,他们将WIPE msxml6.dll排除,这会打破我们的构建。 – Shiv 2017-08-25 02:57:13

0

Windows文件保护系统停止重写系统文件。你的安装程序不想安装这样的文件。

它看起来像有问题的文件是Microsoft ADO的一部分。因此,而不是通过安装程序安装此文件,您需要使其需要安装您的应用程序所需的ADO版本。