0

在使用 Report Builder 3.0 for Sql Server 2012 的 Windows Server 2012 机器上从我的 WPF 应用程序打开 ReportBuilder 应用程序时出现错误。

当我发现我从以下位置删除了 dfshim.dll 的注册表项:[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\App Paths\dfshim.dll]。

在此之后,我没有收到任何错误,并且报告生成器可以正常打开。

这个注册表项有什么用,如果我删除这个条目会有什么影响?我没有删除 dfshim.dll,而只是删除了注册表项。

任何帮助将不胜感激。谢谢

4

1 回答 1

0

dfshim.dll 是 Microsoft ClickOnce部署技术的一部分。我的猜测是 ReportBuilder 正在通过 ClickOnce 传播到客户端计算机。查看您提到的密钥中的条目,我看到一个名为 UseUrl=1 (dword) 的条目。我认为这意味着正确,并且可能与使用 ClickOnce 指定的 URL 启动应用程序有关。我怀疑与其删除密钥,不如将其设置为 0,您可能会获得相同的结果。当请求启动应用程序以验证应用程序的最新版本是否已在本地安装时,ClickOnce 通常会尝试连接到主机 URL。我怀疑删除此密钥会绕过网络检查并仅运行本地副本。

如果您将鼠标悬停在 ReportBuilder 链接上,请记下它并尝试直接导航到它。如果应用程序未打开,则可能是网络或防火墙问题导致此问题。

检查您的事件查看器是否有任何错误日志。他们可以帮助对问题进行分类。

您可能还想看看这个Microsoft Connect 帖子。

于 2013-07-18T04:36:50.690 回答