Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2008/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何正确更新现有应用程序?_C#_Visual Studio 2008_Installation - Fatal编程技术网

C# 如何正确更新现有应用程序?

C# 如何正确更新现有应用程序?,c#,visual-studio-2008,installation,C#,Visual Studio 2008,Installation,我正在开发的应用程序几乎完成了,但我们已经到了一个十字路口。在未来的多次,我们将不得不更新应用程序。我们可以轻松地用新版本和SQLite数据库替换应用程序,但同时我们不想这样做。基本上,我们的应用程序有三个部分: 1. Application 2. Reports DLL (used by the Application) 3. SQLite database. 我们对应用程序的更新频率将低于报告DLL和SQLite数据库的更新频率。我们可能需要添加一个报告,这意味着我们需要向数据库中添

我正在开发的应用程序几乎完成了,但我们已经到了一个十字路口。在未来的多次,我们将不得不更新应用程序。我们可以轻松地用新版本和SQLite数据库替换应用程序,但同时我们不想这样做。基本上,我们的应用程序有三个部分:

1.  Application
2.  Reports DLL (used by the Application)
3.  SQLite database.
我们对应用程序的更新频率将低于报告DLL和SQLite数据库的更新频率。我们可能需要添加一个报告,这意味着我们需要向数据库中添加记录并替换DLL。但是,我在VisualStudio2008中没有找到允许您向其添加逻辑的安装包(甚至不确定是否存在)。我可能会创建自己的,但如果有90%由微软构建的东西,我宁愿使用它。因此,我的简单问题是:

  • 能否在VisualStudio2008中向安装项目添加屏幕/逻辑?
    1a。如果可以的话,有没有人有我可以使用的好教程或链接?谢谢

  • 我们不想替换数据库的原因是,其中可能有他们正在处理的信息。

    是的,您通常可以向visual studio设置项目添加新对话框。codeproject提供的关于如何实现这一点的教程


    建议您将安装程序包迁移到,它是免费的、开源的,而且更加灵活。

    您还可以在应用程序启动时处理对报告和数据库的更新

    因此,在通过安装程序进行升级后,应用程序第一次运行时,它将更新数据库、添加任何新记录等


    在应用程序中添加升级逻辑通常比在安装程序中添加升级逻辑更容易,而且由于只需执行一次升级,因此不会对应用程序的一般启动时间产生负面影响。

    非常感谢您提供的链接。这是非常有帮助的。我一开始考虑过这一点,虽然我现在想不起来,但还是决定反对。我认为这与应用程序的运行方式以及客户对其运行的期望有关。他们希望在安装完成后完成更新,他们不希望等到打开应用程序后再进行更新,因为这样可能需要时间才能加载应用程序。谢谢你的回答。