2011-11-23 115 views
3

我在.Net中开发了一个桌面应用程序。我已经发布并将其部署在我的客户端系统中。但是,当我的客户端运行该设置时,会显示一条错误消息:无法安装或运行应用程序....在桌面应用程序中

无法安装或运行该应用程序。该应用程序需要首先在全局程序集缓存(GAC)中安装程序集Microsoft.SqlServer.Diagnastics.STrace版本10.0.0.0

该怎么办?

+1

您需要在安装程序中包含此文件作为先决条件 – edepperson

+0

对不起,我无法理解.. – RobinHood

回答

1

也许,这个DLL不存在于全局程序集缓存中。

您可以通过下面的命令添加到assemblyGAC

GACUTIL –i <Path to Microsoft.SqlServer.Diagnostics.STrace.dll> 
+0

我在哪里可以检查此程序集是否存在... – RobinHood

+0

我曾经运行此GACUTIL -i <路径到Microsoft.SqlServer.Diagnostics.STrace.dll> cmd提示符.....“命令的语法是错误的”即将到来 – RobinHood

+0

在visual studio命令promt中运行它,或者在实际包含Gacutil.exe – CodingBarfield

0

找到,如果STrace.dll文件存在于您的客户端计算机上,你可以用这个命令行搜索一下: DIR Microsoft.SqlServer .Diagnostics.STrace.dll/s的

如果找到该文件,用以前的anwser命令行到DLL添加到全局asembly缓存

如果没有,你必须增加该F作为部署项目的先决条件 如果您有安装项目(例如installshield/MS安装项目/ Clickonce项目,可以在安装项目属性中添加先决条件。

当您添加先决条件时,您应该能够选择先决条件必须与应用程序一起打包还是从发布者网站下载。

+0

未找到文件将在cmd中提示... – RobinHood

+0

如何在客户端计算机上部署您的应用程序? – Webmixer

1

打开项目属性形成在Visual Studio解决方案资源管理

属性 - >发布 - >应用程序文件

在应用程序的文件窗口中勾选显示在右下角的所有文件。更改发布状态“Microsoft.SqlServer.Types.dll”“先决条件(自动)”包括单击确定并发布应用程序。

+0

该操作询问Microsoft.SqlServer.Diagnastics。STrace不是Microsoft.SqlServer.Types.dll。我有这个相同的问题,并尝试设置发布状态为“先决条件(自动)”,它仍然无法正常工作。 – reggaeguitar

0

什么解决了我的问题是我不得不做什么@ShahidRaees除了包括所有的程序集。除了以.pdb结尾的文件之外,我选择了它们全部。

选择所有这些应该会在安装程序时自动更新GAC,但我不是100%确定的。

相关问题