1

使用 Visual Studio 2010 构建安装项目以安装 Windows 窗体应用程序 .Net 4.0 C#。它多年来一直运行良好,但现在当我尝试安装完成的安装文件时,我收到以下错误消息:

错误 1001。无法在“路径”程序集中获取已安装的类型。--> 无法加载一种或多种请求的类型。检索 LoaderExceptions 属性以获取更多信息。

我一直在寻找答案超过 4 小时现在没有找到任何东西。这个问题在我没有做任何事情的情况下就出现了。上次我构建安装文件就像 2 周前一样,根本没有问题。我没有删除任何与安装项目有关的参考或任何代码。

这个问题怎么会从无到有,更重要的是,我该如何解决?

4

2 回答 2

1

根据您第二条评论中的错误消息,您的 SysDir.exe 程序集似乎已添加为自定义操作,其中 InstallerClass 属性设置为 true,但在 exe 中找不到安装程序类或无法找到 exe由于缺少依赖项而加载。

您可以通过右键单击安装程序项目,选择查看,然后选择自定义操作来查看自定义操作列表。

如果您的 exe 不能安装程序类,那么您可以将其从自定义操作列表中删除。

如果它确实包含安装程序类,那么问题将是缺少依赖项。如果 fuslogvw 对您不起作用(它一直帮助我们解决此类问题),您可以仔细查看 exe 项目中的引用列表,并将它们与安装程序项目中列出的内容进行比较。

我们使用的另一个技巧是在屏幕上显示错误消息时检查安装目录。我们经常可以通过这样做看到缺少 DLL,这通常是因为在安装程序项目的 DLL 条目中输入的路径不正确,或者因为条件设置不正确。

于 2012-08-04T18:40:49.557 回答
0

今天有同样的错误。对我来说,这是类库的项目类型。

我注意到我所关注的指南上的图片选择了Class Library (.NET Framework)而不仅仅是Class Library

创建正确的项目类型修复了错误。

https://nhvu1988.com/posts/how-to-create-msi-installer-using-vs-installer/

于 2022-02-07T16:03:10.990 回答