【发布时间】:2011-09-02 13:11:06
【问题描述】:
在我的应用程序中,我根据用户的选择动态加载一些程序集。自然,这些在项目中没有被引用。使用 ClickOnce 发布时,这些程序集不包含在包中。
问题是 - 是否可以欺骗 ClickOnce 发布者使用项目中未引用的其他文件?
【问题讨论】:
标签: visual-studio-2008 clickonce
在我的应用程序中,我根据用户的选择动态加载一些程序集。自然,这些在项目中没有被引用。使用 ClickOnce 发布时,这些程序集不包含在包中。
问题是 - 是否可以欺骗 ClickOnce 发布者使用项目中未引用的其他文件?
【问题讨论】:
标签: visual-studio-2008 clickonce
我假设您正在使用 Visual Studio 发布部署。
如果您想以这种方式继续,您必须将文件添加为引用,或者将它们作为内容添加到项目中。在启动项目的属性下,转到发布选项卡 Application Files..,并确保包含该文件。
您的另一个选择是使用 mageui.exe(或 mage.exe,如果您想从命令行工作)在 Visual Studio 之外构建和发布单击一次清单。
【讨论】:
您可能不引用程序集,因为您不想被 ClickOnce 部署,并在以后动态下载。 但你不必这样做。正常引用。
这里描述了一种动态加载程序集的方法: http://msdn.microsoft.com/en-us/library/ak58kz04.aspx
问题是这是一种手动方法,使用 mage/MageUI 标记为可选。 您可以在 Visual Studio 中的项目属性/发布/应用程序文件中执行此操作,并在要以编程方式下载的程序集的行中按所需名称更改下载组。在链接示例中,新建名称为“ClickOnceLibrary”。
【讨论】:
MageUI 的替代品是ManifestManagerUtility for ClickOnce。
【讨论】: