标签: setup-project

Visual Studio 2010 - RemovePreviousVersions

我有一个Visual Studio 2010部署项目,其中包含以下设置:

DetectNewerInstalledVersion = True
InstallAllUsers = True
RemovePreviousVersions = True
Run Code Online (Sandbox Code Playgroud)

我正在构建的项目有几个DLL,由于实现序列化的传统方式,此项目的文件版本无法递增(我们正在更改).

如何让安装项目完全删除现有文件(或者至少覆盖所有新文件)?

也许我需要在安装程序中编写卸载脚本(有人可以链接我这样做,我找不到)

我环顾四周,对于任何现有的问题,他们都说"增加你的文件版本",但对我来说这不是一个选项.

installer setup-project visual-studio-2010

15
推荐指数
1
解决办法
1万
查看次数

Visual Studio:如何自动卸载以前安装的版本?

我有一个简单的Web安装项目,可从可部署项目中读取.

尽管我已经设置了安装程序DetectNewerInstalledVersion,以false我总是说讨厌以前安装存在的警告框,我需要去Control Panel找到要删除的软件它...

有没有办法在新的安装对话框中添加脚本,可以说A previous version was found, press NEXT to uninstall it.

setup-project visual-studio-2010

15
推荐指数
2
解决办法
3万
查看次数

将App.Config设置为安装项目中的自定义操作

我有一个自定义应用程序,其中包含一个简单的app.config,用于指定SQL Server名称和数据库,我想在应用程序安装时提示用户安装应用程序配置项,然后更新app.config文件.

我承认我对设置项目非常陌生,我正在寻找一些指导.谢谢Mark Koops

deployment app-config setup-project

14
推荐指数
2
解决办法
2万
查看次数

正确的卸载Windows服务的方法?

我有一个使用C#构建的Windows服务,它是通过VS2008安装项目安装的,并且在卸载过程中遇到了一些问题:

卸载前不会停止服务

卸载例程运行时,会引发有关正在使用的文件的错误.单击"继续"正确完成安装程序,但该服务仍显示在列表中,因此未正确卸载.

(目前,我不得不使用sc delete servicename手动删除它).

我试图在使用以下代码卸载之前停止服务,但它似乎没有生效:

protected override void OnBeforeUninstall(IDictionary savedState)
{
   base.OnBeforeUninstall(savedState);
   ServiceController serviceController = new ServiceController(MyInstaller.ServiceName);
   serviceController.Stop();
}
Run Code Online (Sandbox Code Playgroud)

何时调用此代码,如何在卸载之前停止服务?

卸载后未删除安装文件夹

应用程序还会在执行时在其安装文件夹中创建一些文件.卸载后,安装文件夹(C:\ Program Files\MyApp)不会被删除,并且包含应用程序创建的文件,但安装程序实际安装的所有其他文件都已成功删除.

卸载过程是否可以删除安装文件夹,包括该文件夹中的所有生成文件,如果是,如何删除?

谢谢.

c# setup-project visual-studio-2008

14
推荐指数
1
解决办法
6635
查看次数

使用安装项目在安装时指定Windows服务名称

目标:为了支持在一台计算机上可能有多个实例的Windows服务,请使用安装项目创建一个能够执行以下操作的MSI:

  1. 接收服务名称的用户输入
  2. 安装服务
  3. 从1序列化服务名称(以便在记录和卸载时使用正确的名称)

我最初的希望是在App.config中设置服务名称(然后在实例化ServiceInstaller时在卸载期间检索它.这似乎很天真,因为在安装过程中无法访问它.

如果MyInstaller扩展了Installer,它可以调用base.Install(); 但是,我尝试写入app.config(在MyInstaller.Install()内和base.Install()之后)是无效的.

因此,虽然可以使用自定义服务名称安装服务,但该名称未被序列化,安装程序在卸载时最不满意.

该怎么做?

c# windows-services setup-project

13
推荐指数
1
解决办法
8485
查看次数

Visual Studio 2010"安装项目"注册表编辑器不起作用

我有一个安装项目需要向注册表添加1个简单的字符串,并且安装项目中的内置注册表编辑器似乎根本不起作用.它默认将基本密钥HKEY_LOCAL_MACHINE\Software\[Manufacturer]放入安装项目中,甚至不起作用.

以下是我用来添加密钥的步骤.

  • 右键单击安装项目:查看 - >注册表
  • 将显示模拟注册表,并根据需要深入创建密钥.
  • 我创建HKEY_LOCAL_MACHINE\Software\[制造商]\[ProductName]
  • 运行安装程序.没有报告错误,但密钥不存在.

编辑:看看这个网页上的图5 .它向你展示了我看到的东西,除了看起来像是一个更老版本的visual studio.

我不知道这怎么会失败,应该这么简单.我甚至尝试过简单的键,它不会创建任何东西,或者至少会抛出错误.我已经看过这个解决方案,但是当有内置功能时,添加一个post build步骤来手动编辑注册表是荒谬的.该帖子表明该功能刚好被破坏,所以不要使用它.

registry installation installer install setup-project

13
推荐指数
1
解决办法
8742
查看次数

如何将EULA添加到VS2008安装项目?

这是一个非常简单的问题,答案很简单,但在互联网上找到答案并不是那么简单.

我在Visual Studio 2008中有一个简单的安装(部署)项目,我有EULA文本.在项目中我需要做什么才能将EULA纳入安装向导?

eula setup-project visual-studio-2008 visual-studio

12
推荐指数
1
解决办法
4253
查看次数

如果文件存在,Visual Studio设置项目是有条件的

我有一个安装/部署项目对我的应用程序,它输出的某些文件(*.DLL,*.dat)复制到应用程序文件夹.

我想设置一个条件来检查文件当前是否存在.如果没有,请写入,但如果是,请不要从包中安装.可能吗?

该文件称为"database.dat"下的属性,我看到一个"条件"属性,但我不熟悉,放什么在里面.

任何输入都非常感谢.提前致谢.

编辑:

之所以会存在是从以前的安装将有从数据集/数据表中,我们不希望重写的数据.

setup-project setup-deployment visual-studio-2008

12
推荐指数
1
解决办法
2万
查看次数

Windows安装程序3.1和4.5之间的区别在创建SetUP项目时,选择哪一个

我正在为Win App创建SetUp项目.在VS2010 Framework 4.0中

现在选择先决条件(从项目属性获胜)

根据我的项目要求,我有Microsoft .NET Framework 4(x86和x64).

现在我对Wind Installer的选择感到困惑

(Windows Installer 3.1/Windows Installer 4.5)

它们是基于应用程序将安装的操作系统或......什么..?

.net installer setup-project visual-studio-setup-proje c#-4.0

12
推荐指数
1
解决办法
8175
查看次数

在 Visual Studio 2022 上设置项目

在 Visual studio 2019 及更早版本中,安装项目是我可以添加到任何解决方案的项目模板的一部分。现在我尝试在 VS 2022 中打开一个旧的解决方案,它说此类项目不兼容。

是这样吗,还是我错过了什么?我能做些什么吗?

我知道有一些新的安装程序解决方案与 VS 集成,但安装项目只适合我,我从来没有觉得需要改变。

setup-project visual-studio visual-studio-2022

12
推荐指数
1
解决办法
2万
查看次数