首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >错误消息“无法安装或运行应用程序。应用程序需要GAC中的stdole版本7.0.3300.0”

错误消息“无法安装或运行应用程序。应用程序需要GAC中的stdole版本7.0.3300.0”
EN

Stack Overflow用户
提问于 2009-02-17 19:24:58
回答 10查看 134.5K关注 0票数 56

当一个用户尝试运行应用程序时,我们的ClickOnce应用程序将报告:

无法安装或运行应用程序。该应用程序需要GAC中的stdole版本7.0.3300.0。

有趣的是,GAC (C:\Windows\assembly)没有安装stdole。我怎样才能把它带到那里呢?

我们使用的是.NET 3.5,它已安装在此计算机上。

EN

回答 10

Stack Overflow用户

回答已采纳

发布于 2009-02-18 15:32:39

所以结果是.NET文件被复制到了C:\Program Files\Microsoft.NET\Primary Interop Assemblies\。但是,它们从未在GAC中注册过。

我最终手动将C:\Program Files\Microsoft.NET\Primary Interop Assemblies中的文件拖到C:\windows\assembly上,然后应用程序就可以在那台有问题的机器上工作了。您也可以使用Gacutil以编程方式完成此操作。

因此,在安装过程中.NET似乎发生了一些事情,但这似乎解决了这个问题。我希望这对其他人有帮助!

票数 28
EN

Stack Overflow用户

发布于 2009-02-17 19:42:27

尝试转到项目属性中的Publish选项卡,然后选择Application Files按钮。然后设置以下属性:

Include

  • Download组的stdole.dll

  • Publish状态的
  • 文件名所需的

之后,您需要重新发布您的应用程序。

如果引用具有CopyLocal=true,则引用将与应用程序一起发布。如果引用具有CopyLocal=false,则该引用将被标记为先决条件。这意味着在安装ClickOnce应用程序之前,必须在客户端的GAC中安装程序集。

有些程序集由于Visual Studio安装而被安装到GAC中,而不是由于.NET框架安装。这可能是你的情况。

票数 67
EN

Stack Overflow用户

发布于 2014-10-01 05:41:33

就我的情况而言,我解决了这个问题,转到项目属性中的发布文件选项卡,然后选择应用程序文件按钮。然后只需:

注意:在应用此解决方案之前,请确保您已经(和我一样)检查了解决方案的所有项目,并且没有找到对stdole.dll程序集的引用。

1-定位stdole.dll文件;

2-将其发布状态更改为Exclude

3-在此之后,您需要重新发布您的应用程序

此问题发生在从Visual Studio 2010迁移后的Visual Studio 2012上。

希望能有所帮助。

票数 22
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/558361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档