代码之家  ›  专栏  ›  技术社区  ›  black sensei

WPF部署策略两难:clickonce(有限定制)+autoupdate vs installer(无限成本化)no autoupdate

  •  0
  • black sensei  · 技术社区  · 15 年前

    我一直面临部署问题。我已经建立了一个 WPF application 具有 visual studio 2008 创造了一个 installer automatic 更新它。我见过 this article 在windowsclient.net上,它看起来很老,但对我来说可能是完美的 updater block v2.0 enterprise library june 2005 因为某些原因,它没有安装在我的机器上。

    我想我需要使用更新的企业库,所以 installed and compiled Enterprise 4.1(october 2008) 但没什么比这更好的了。我决定试试看 CLickonce sqlite dll in the GAC . 当然,它已经在那里了。当我搬到vista时,我注意到有一个问题。检查完网络后,我知道了 it's impossible to add a dll to the Global Assembly Cache .

    谢谢你看这个!!

    2 回复  |  直到 15 年前
        1
  •  1
  •   RobinDotNet    15 年前

    (不适合评论)

    这里有一些有用的东西--您可以在本地部署SQLCEDLL,而不是作为先决条件安装,这使得部署更容易。退房 this article .

    这是另一篇有用的文章: how to keep your data safe from ClickOnce updates .

    this thread

        2
  •  0
  •   RobinDotNet    15 年前

    首先,你不能使用那个更新程序块。它是针对.NET1.1的。在.NET2.0中添加ClickOnce部署时,它被标记为已过时。

    您可能不需要在GAC中安装该dll。在许多情况下,您只需将其包含在部署中,它就会找到本地引用并使用它。这取决于dll。所以我建议你试试:

    删除项目中对该dll的引用,然后重新添加它。但是不要从GAC中挑选它,而是浏览到您刚刚添加到项目中的一个并选择它。在引用属性上,将“copy local”设置为“true”。

    就像我说的,这在某些情况下非常有效。它适用于SQLCE和DirectX,但不适用于基础设施之类的东西。有些组件确实必须安装在GAC中。你唯一能知道的就是你是否试过。

    推荐文章