.net - 覆盖以前安装的 .NET winforms 应用程序

标签 .net vb.net winforms

抱歉,如果之前有人问过这个问题,我已经搜索过但找不到答案。我已经创建了一个 WinForms VB.NET 应用程序并使用 Visual Studio 发布工具向它部署了一个服务器。在服务器上它自动安装到这个目录:

"C:\Documents and Settings\Administrator\Local Settings\Apps\2.0\C8TQL85O.NPG\WDKBJDPD.HQO\expi..tion_550653a49cafdf54_0001.0000_dd22cceef4d5bb47\MyReport.exe"

今天我对应用程序进行了一些更改,然后重新部署了它。在我安装的服务器上,它自动安装在这个目录中:

"C:\Documents and Settings\Administrator\Local Settings\Apps\2.0\C8TQL85O.NPG\WDKBJDPD.HQO\expi..tion_550653a49ca0b3f4_0001.0000_dd22cceea4d5cc47\MyReport.exe"

一开始我错过了,但第二个目录与第一个目录略有不同。 我现在是否无意中安装了重复的应用程序,因此安装了两个版本?

如果是这样,我如何让应用程序安装例程覆盖以前的版本?

此外,我使用 Windows 任务计划程序来启动 .EXE,这意味着我需要不断更新它以匹配目录。是否可以安装到保持不变的特定目录?

谢谢。

最佳答案

如果您要发布到网络驱动器,这个应用程序将从哪里安装,实际上并不难。

  • 使用发布向导:Build Menu -> Publish “Project Name Here”

  • 选择应用程序文件所在的网络驱动器路径 发布到

  • 在接下来的菜单中,选择“从 UNC 路径或文件共享,然后选择与之前屏幕相同的路径。”

  • 接下来,根据您项目的用途,您将选择应用程序离线首选项。我通常选择是。点击下一步,然后完成。

当用户从 UNC 路径安装应用程序时,他们将在开始菜单中获得一个图标(如果您在离线首选项中选择是),他们可以从那里运行它。 exe 本身将位于一个文件夹中,就像您的问题中的文件夹一样,您可以使用 Windows 调度程序将其作为目标,但您将不得不去寻找它。

关于.net - 覆盖以前安装的 .NET winforms 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13362201/

相关文章:

vb.net - 如何清除datagridview中的所有数据且不影响删除数据

c# - NTLM授权WCF在ASP.NET Core中不起作用

.net - 在 VB.NET 中使用单个属性实现多个接口(interface)

vb.net - SQL查询数据收集

c# - 为什么需要处理图形?

c# - 对用 years 填充 ComboBox 感到困惑

c# - 将 Dictionary<string, object> 转换为匿名对象?

c# - 从行中的链接获取 gridview 行详细信息

.net - lock()在这里有意义吗?

vb.net - 使用BackgroundWorker检查元素是否存在于WebBrowser中