我使用c#创建了一个使用CrystalReport查看日常报告的Windows应用程序。问题是我希望用户在不下载水晶报告的情况下在客户端计算机上查看报告。如何将水晶报告查看器添加到应用程序exe&# 39;先决条件,以便客户机中的exe自动从应用程序下载水晶报告。
由于
答案 0 :(得分:0)
您可以使用以下选项之一
创建安装项目并添加Crystal Reports作为先决条件。这将在安装期间强制下载。检查this link以获取有关如何创建安装项目以及如何添加先决条件的更多信息。
从this link下载Crystal Reports运行时(msi文件)并将其部署在应用程序的文件夹中。创建一个函数,在应用程序启动时检查晶体报告程序集是否存在。如果组件丢失,则应用程序第一次运行或有人从机器上卸载晶体报告运行时。在任何一种情况下,都要从本地文件夹安装运行时文件。
这些选项各有利弊
在第一种情况下,客户端的机器必须具有互联网连接,因此它可以下载先决条件,但是包装尺寸会很小,因为您没有在本地部署所有文件,而且您没有&# 39;必须关心将根据客户端机器下载的32bit / 64bit软件包的类型。
在第二种情况下,您不需要互联网连接(除非您需要进行其他操作),但由于每个水晶报告运行时间大约为80MB并且如果您需要加倍,因此包装尺寸将大大增加将部署32位/ 64位版本。