我在.Net开发了一个桌面应用程序。我已经在我的客户系统中发布并部署了它。但是当我的客户端运行该设置时,会显示一条错误消息:
无法安装或运行该应用程序。该应用程序要求首先在全局程序集缓存(GAC)中安装程序集Microsoft.SqlServer.Diagnastics.STrace版本10.0.0.0
我该怎么做?
答案 0 :(得分:2)
在visual studio中打开项目属性表单解决方案资源管理器
属性 - >发布 - >申请文件
在“应用程序文件”窗口中,选中右下角的“显示所有文件”。更改发布" Microsoft.SqlServer.Types.dll" "先决条件(自动)" 的状态包括单击确定并发布应用
答案 1 :(得分:1)
可能这个dll在全局程序集缓存中不存在。
您可以通过以下命令将assembly
添加到GAC
:
GACUTIL –i <Path to Microsoft.SqlServer.Diagnostics.STrace.dll>
答案 2 :(得分:0)
要查找客户端计算机上是否存在STrace.dll文件,可以使用以下命令行进行搜索: dir Microsoft.SqlServer.Diagnostics.STrace.dll / s
如果找到该文件,请使用先前的anwser命令行将dll添加到全局组装缓存
如果没有,则必须在部署项目中将此文件添加为先决条件 如果您有一个安装项目(lik installshield / MS安装项目/ Clickonce项目,可以在您的安装项目属性中添加先决条件。
当您添加先决条件时,您应该可以选择是否必须将先决条件与您的应用程序打包在一起或从发布者网站下载。
答案 3 :(得分:0)
解决了我的问题是我必须做@ShahidRaees所做的事情,除了包括所有的程序集。除了以.pdb结尾的文件外,我选择了所有这些文件。
选择所有这些应该会在您安装程序时自动更新GAC,但我不是100%确定。