Tag: windows installer

如何添加.Net框架先决条件来安装安装

我在MS Visual Studio 2017中有一个C#WinForms项目。 我添加了一个Visual Studio安装程序安装向导项目来为我的应用程序创建安装程序。 这是我第一次使用安装程序项目。 安装程序正确具有.Net framework 4.5.1的先决条件。 但是,我想让安装程序包含.Net框架安装,而不是要求用户在安装时单独下载和安装它(某些用户的计算机没有Internet连接)。 我已经在安装属性页中设置了“从与我的应用程序相同的位置下载先决条件”的先决条件,但是当我构建设置时,我看到3个错误,如下所示: 错误:要在“先决条件”对话框中启用“从我的应用程序的相同位置下载先决条件”,您必须为项目“Microsoft .NET Framework 4.6”下载文件“DotNetFX461 \ NDP461-KB3102436-x86-x64-AllOS-ENU.exe” .1(x86和x64)’到您的本地计算机。 有关详细信息,请参阅http://go.microsoft.com/fwlink/?LinkId=616018 。 包含的链接并不真正有用,因为它引用了ClickOnce安装。 我有提到的NDP461 exe,但我不知道在哪里放。 我看到一些其他问题提到使用MS Bootstrapper Package Manager创建一个bootstrapper包,但是这似乎已经从MS上关闭了code.msdn.microsoft而从互联网上消失了, 显然没有关于替换的信息 。 此外,我可以在该主题上找到的大多数文档和SO问题都与旧版本的MSVS有关,并且与MSVS 2017没有关联(至少不能直接让我弄清楚!)。 我如何实际获得安装项目以找到exe? 我是否只需要将它放在正确的位置(已尝试过在各种MSDN页面和注册表项下列出的一些)? 或者我需要创建一个bootstrapper包吗? 如果是后者,是否有关于此过程的最新文档? 谢谢! PS:如果我选择使用已安装在我的开发机器上的(更新的).Net框架,那么这个过程会更容易吗? (我猜测机器上某处可能有安装信息) 更新所以我尝试切换到目标.NET 4.6,下载NDP46-KB3045557-x86-x64-AllOS-ENU.exe并将其放在目录C:\Program Files (x86)\Microsoft SDKs\ClickOnce Bootstrapper\Packages\DotNetFX46 。 安装程序设置项目现在已构建,但会发出以下警告(同样,其中3个): 警告:“Microsoft .NET Framework 4.6(x86和x64)”中“PublicKey”属性的值与文件’C:\ Program Files(x86)\ Microsoft SDK […]

.NET Framework的目标版本与启动条件不匹配

我在VS 2010中构建了一个ac #project。它通过COM引用了一个C ++项目,这也是解决方案的一部分。 上周五,我做了一个成功的构建,更改了一行代码,进行了另一个构建,我开始收到有关.NET的错误。 项目中.NET Framework的目标版本与.NET Framework启动条件版本“.NET Framework 3.5”不匹配。 更新.NET Framework启动条件的版本,以匹配高级编译选项对话框(VB)或应用程序页面(C#,F#)中的.NET Framework的目标版本。 项目 – >属性 – >应用程序 – >目标框架(适用于Debug和Release中的每个项目) 项目 – >属性 – >发布 – >先决条件(已确认.NET 3.5和Windows Installer 3.1) 设置 – >启动条件 – > .NET Framework 设置 – >属性 – >先决条件 我还查看了安装程序的vdproj代码,确认启动条件是.NET 3.5: “ComponentsUrl” = “8:” “Items” { “{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.3.5.SP1” { “Name” = “8:.NET Framework […]

VS2008安装项目:卸载以前的MSI

我有一个VS2008安装项目,它创建一个安装WinForms应用程序(C#)的setup.msi。 每次更新版本号时,用户首先必须卸载以前的版本才能安装新版本。 否则我们得到可怕的“此产品的另一个版本已安装”消息。 这是我在构建新版本安装程序时已经在做的事情: 设置RemovePreviousVersions = true和DetectNewerInstalledVersion = true 增加AssemblyVersion (正在部署的exe) 增量版本 (安装项目) 生成一个新的ProductCode (当VS更改时,由VS提示) 保持UpgradeCode不变 然而它仍然拒绝卸载以前的版本。 那么,我错过了什么? 或者我做错了什么? 谢谢!

从自定义安装程序类操作更新 .config文件

我尝试在安装过程中更新我的应用程序的.config文件( 通过.NET安装程序类操作 )。 但是,我似乎无法让ConfigurationManager列出任何属性或能够设置任何属性。 我从几个stackoverflowpost中了解了这种方法,这些post向我指出了本指南: http : //raquila.com/software/configure-app-config-application-settings-during-msi-install/ 我已经调查了我的项目和他之间的差异,并注意到我的配置文件格式不同。 我相信这与我正在使用“设置”文件的事实有关。 在指南中格式化的配置文件如下所示: 我的地方看起来像: asdfasdfasdf False True 为了解释发生了什么……我尝试打印出如下设置列表: Configuration config = ConfigurationManager.OpenExeConfiguration(exePath); // Try getting the Settings1 Section AppSettingsSection appSettings = (AppSettingsSection)config.GetSection(“Settings1”); // Also tried myNamespace.Settings1 if (appSettings != null) { valList = “Settings1: “; foreach (string key in appSettings.Settings.AllKeys) { string value = appSettings.Settings[key].Value; valList += […]

创建包括SQL无提示安装和C#Winforms项目的安装包

我想创建一个安装程序文件,其中包含SQL Server和C#项目的安装程序文件,以便用户不必单独执行此操作。 我已经看到了一些解决方案,但希望得到市场上可用的最佳解决方案的建议。

安装结束后如何在c#中删除文件?

我正在使用c#在.NET Framework中开发一个Windows应用程序。 我希望在安装我的应用程序时,按照特定的顺序依次运行两个exe文件。 我知道我可以通过使用自定义操作在安装时运行exe,但我不知道如何按特定顺序运行它。 我是c#的新手,所以最好先详细介绍一下。

WiX静默安装无法启动内置的.EXE:WiX v3

我知道这看起来像是重复的,但我几乎尝试过任何在线内容,包括以下链接: 使用双击时,安装成功完成,并启动我的EXE,这是一个WPF UI。 问题是如果在命令行中运行,则会安装WiX安装程序,但我的WPF不会启动。 没有驱动程序更新。 请注意,我有自定义开关,如/? 我的WPF中的/ q / forerestart / noreboot。 安装后启动,没有UI? http://wixtoolset.org/documentation/manual/v3/howtos/ui_and_localization/run_program_after_install.html 这是我的代码如下 NOT Installed <!– –> <!– –> <!—-> <!– –> NOT Installed

对于已关闭的源程序集,“无法validation的代码未通过策略检查”

我试图在MSI安装例程期间从C#程序中的资源流动态加载一些(购买的)程序集,但我得到“无法validation的代码失败的策略检查”。 我在网上阅读了一些关于使用/ clr:safe编译嵌入式程序集的技巧,但我没有这个选项。 有没有办法解决这个政策检查? 谢谢。

MSI-installer未更新的正在使用的文件(Visual Studio Installer项目)

我正在使用Visual Studio Installer Projects扩展来为我的应用程序构建MSI安装程序。 但是,我的应用程序应该始终在运行,如果在用户安装我的软件的新版本时它是打开的,那么打开的文件不会被覆盖,并且几乎没有实际更新(尽管没有安装程序) -errors)。 我发现使用安装程序项目的“自定义操作”来运行关闭应用程序的脚本没有帮助,因为在替换文件之前没有调用任何操作。 是否有一种好方法可以确保在文件被覆盖之前终止打开/锁定文件?

安装后,C#应用程序(使用WIX创建的安装程序)不会运行

经过几天的点击和试用后,我创建了一个简单解决方案的WIX安装程序,并按照几个教程,包括在安装结束时启动应用程序的选项,桌面上的图标和添加/删除程序列表中的应用程序快捷方式。 当它完全运行时,我为包含6个项目和SQLite数据库的原始项目复制了相同的过程。 但是现在当我安装安装程序时,单击桌面上已安装的图标无效。 它不会启动指定的exe。 请帮助我。 我应该分享wxs代码吗? 更新:以下是我的.wxs文件的大部分代码。 抱歉,我无法破译问题的根源,因此必须包含除标准顶级标签之外的所有代码。 此外,一旦发现问题,它可以成为其他Wix用户受益的参考。 WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 and NOT Installed 从Debug或Release文件夹运行时,Pihu.exe运行正常。 第一个屏幕独立于DB,因此不会出现问题。 我认为唯一的问题是解决方案是多项目(尽管所有依赖项目的dll也存在于Debug和Release文件夹中)