有没有办法在不使用MSI的情况下部署.Net应用程序?
-
08-07-2019 - |
题
我有一个.Net程序,我想在终端服务器上安装。在过去,我已经创建了安装程序项目并生成了一个MSI。但是,终端服务器要求在运行MSI之前将所有用户都关闭,我想避免这种情况。有没有办法在没有MSI的情况下进行安装?
有时对于某些用户帐户,我只需复制.exe并使用它。但对于其他用户而言,这样做会引发奇怪的“未找到文件”。显然存在的文件的错误。 (显然,如果exe没有通过MSI“正式”安装,那么运行.net exe必须存在注册表设置,可能存在也可能不存在?)
解决方案
是的,一般情况下,除非您需要将组件安装到全局程序集缓存(GAC)中,否则您需要做的就是将文件复制到要运行它的计算机上的文件夹中。它,你需要做的就是双击.exe文件。
唯一需要注意的是机器必须安装正确的.net框架......
其他提示
我想知道为什么没有提到ClickOnce ...... 它是一种“轻量级”的产品。作为开发人员进行最少的工作安装(只需填写几个字段并在项目属性中按“发布”)并为用户提供便利。名称是座右铭:用户必须启动ClickOnce-Application并接受它的安装。 .NET Framework会将文件复制到特殊的ClickOnce-Cache,创建一些指向应用程序的链接(如果已启用),甚至可以轻松自动更新开箱即用。也可以检查预先要求,例如正确的.NET Framework或SQL Server。
您可以在维基百科中找到更多相关信息: http://en.wikipedia.org/wiki / ClickOnce的
我们使用Inno设置( http://www.innosetup.com/isinfo.php)。我对这个工具有最好的体验。它简单,轻便,自由,快速。
.Net应用程序通常不需要“安装”。您通常只需将文件系统中所需的文件放在文件系统上,并为用户提供启动它的快捷方式。
然而,在某些情况下,这是可取的。例如,如果要将程序集添加到GAC,则安装可以自动执行该程序集。如果是这种情况,您是否考虑过ClickOnce部署?它可能能够处理你需要的东西。
如果您只想更新应用程序(而不是安装新的快捷方式或诸如此类的东西),那么我只想制作一个WinRAR自解压文件。您可以在其中嵌入目标目录并指定安静的安装。
ByteEssence InstallMaker是另一个免费选项: