包含clickonce安装的组件 - 正确的方法是什么?

时间:2010-12-31 12:01:39

标签: clickonce microsoft-sync-framework

我有一个clickonce应用程序,它使用2.1版的同步框架。 我希望能够运行应用程序的所有文件都捆绑在一起。

在我的发布设置中,在“应用程序文件”下,我标记了要包含的以下文件:

  • microsoft.synchronization.data.dll
  • microsoft.synchronization.data.server.dll
  • microsoft.synchronization.data.sqlserver.dll
  • microsoft.synchronization.sqlserverce.dll
  • microsoft.synchronization

这似乎使得istaller需要额外下载任何东西。 但是,应用程序的目标是32位。如果应用程序安装在64位计算机上,则在执行以下同步时会出错:

...failed due to the following error 80040154 class not registered regdb-e-class not registered...

此修复程序将由用户从此处安装32位版本的可再发行同步框架:Microsoft

对于这种情况,发布设置我做错了什么?理想情况下,Id喜欢的应用程序能够安装和运行,而无需下载任何额外的东西。

由于

1 个答案:

答案 0 :(得分:0)

我认为你必须有两个部署,一个用于包含64位程序集的64位计算机,另一个用于包含32位程序集的32位计算机。

您的另一个选择是采用Sync Framework的可再发行组件,并使用Bootstrapper Manifest Generator为其创建自定义先决条件; BMG可能会检查操作系统,我不确定。如果没有,这当然不适合你。