.net windows窗体应用程序的部署策略
本文关键字:部署 策略 应用程序 windows 窗体 net | 更新日期: 2023-09-27 18:27:33
我们有一个.net windows窗体应用程序,多年来我们一直在使用Visual Studio安装项目来构建我们的msi安装程序。我们的设置存储在注册表中,也存储在用户配置文件中。我们面临的问题是,我们的用户主要在银行业的非常受限的环境中工作,根本没有做任何事情的权限。在最好的情况下,他们可以访问安装应用程序的文件夹。因此,每次他们需要升级我们的应用程序时,都需要让IT部门参与进来,这需要数月的等待和荒谬的成本。
因此,我们的想法是,将所有用户和应用程序设置存储在应用程序文件夹中,并通过简单地复制和粘贴必要的文件到正确的目录进行安装。我们没有任何依赖项或COM dll,不需要注册任何东西。其思想是,部署的工作方式类似于Eclipse复制粘贴安装或MacOSX应用程序。不需要把东西放在注册表中,不需要使用安装程序只需复制和粘贴文件夹。那么,有没有人尝试过这种策略?你认为缺点是什么?
将设置放入应用程序文件夹通常是一个非常糟糕的主意(尤其是在安全性很重要的环境中)。原因是您的用户需要对应用程序文件夹进行写访问,这将使他们能够修改可执行文件
此外,每个用户的私人设置是不可实现的,因为每个人都会看到每个用户的设置。
用户配置文件(请参阅C#获取%AppData%的路径)是存储这些设置的最佳位置。您应该告诉客户,这种"拷贝部署"实际上会降低安全性、可靠性和可维护性。
这是一种可接受的方法,被广泛使用,名称为"Portable"。可移植应用程序不需要安装,只需要在单个文件夹中处理应用程序DLL和依赖项。只要它完全适合您的生产环境,您就可以继续。