标签: bootstrapper

使用WiX 3.6和Burn进行引导序列验证问题

<?xml version="1.0" encoding="UTF-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:util="http://schemas.microsoft.com/wix/UtilExtension">   <Bundle Name="My Test Program" Version="1.0.0.0" Manufacturer="Microsoft" UpgradeCode="cc7cfeae-c3a4-4430-841e-f927de3f9f95">
    <BootstrapperApplicationRef Id="WixStandardBootstrapperApplication.RtfLicense" />

    <util:RegistrySearch Id="FindDotNet35SP1InstallRegValue" Root="HKLM"
                         Key="SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5" Value="SP"
                         Variable="DotNetFramework35SP1InstallRegValue" />
    <util:RegistrySearch Id="FindDotNet40FullInstallRegValue" Root="HKLM"
                         Key="SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full" Value="Install"
                         Variable="DotNetFramework40FullInstallRegValue" />

    <Chain>
      <ExePackage Id="DotNet3.51" Cache="no" Compressed="no" Vital="no"
                  PerMachine="yes" Name="DotNet3.51"
                  SourceFile=".\sources\dotnetfx35sp1_full_x86_x64.exe"
                  InstallCommand="/passive /promptrestart" Permanent="yes"
                  DownloadUrl="http://webserver/dependencies/dotnetfx35sp1_full_x86_x64.exe"
                  DetectCondition="DotNetFramework35SP1InstallRegValue=1" />
      <ExePackage Id="DotNet4.0" Cache="no" Compressed="no" Vital="no"
                  PerMachine="yes" Name="DotNet4.0"
                  InstallCommand="/passive /promptrestart" Permanent="yes"
                  SourceFile=".\sources\dotnetfx40_full_x86_x64.exe"
                  DownloadUrl="http://webserver/dependencies/dotnetfx40_full_x86_x64.exe"
                  DetectCondition="DotNetFramework40FullInstallRegValue=1" />
      <ExePackage Id="ClientInstall" Cache="no" Compressed="no" Vital="yes"
                  PerMachine="yes" Name="ClientInstall"
                  SourceFile=".\sources\client_win32-setup.exe" />
    </Chain>

  </Bundle>
Run Code Online (Sandbox Code Playgroud)

好的,这是我的源代码.比如,一台机器永远不会安装.NET 3.5 SP1和.NET 4.0.所以,现在我运行setup.exe文件.我故意取消.NET 3.5 SP1和.NET …

wix bootstrapper wix3.6

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

在XP中安装.Net 4之前的VS 2010 BootStrapper for WIC(Windows Imaging Component)

我已经在VS 2010中为我的.Net 4应用程序创建了一个设置和部署项目.在我的先决条件中,我已经检查过.Net4先决条件但我已经了解到.Net4已经省略了WIC(Windows Imaging Component)以使其变得轻松.

当我在Vista/Win7中运行我的设置时,Net4安装不会给WIC带来错误,但是当我在XP中安装它时,它会给WIC带来错误.然后我必须先手动安装WIC然后运行我的设置.

我需要一个WIC的引导程序,它在XP中安装.Net4之前运行.请建议如何完成或链接.提前致谢.

.net wic bootstrapper setup-deployment visual-studio-setup-proje

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

VS2012和Wix 3.6 - 使用我的应用程序安装.Net 4.5

我对安装人员世界很新.

我已成功为我的应用程序创建了一个.msi,它正在使用快捷方式构建并正确卸载.

我的下一个目标是使用安装程序打包.Net 4.5并在安装我的应用程序之前安装它.

我还有一个需要安装的第三方应用程序.它被打包为msi.

根据我的收集,我需要开发一个Bootstraper解决方案,让这些应用程序按顺序安装.

任何人都可以提供如何以这种方式实现安装程序的指南吗?我的搜索提出了一些部分实现,假设在Visual Studio中设计了Wix Bootstrapper项目.

wix bootstrapper burn wix3.6 .net-4.5

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

使用wix burn Bootstrapper UI取消安装和回滚

我正在使用Wix 3.7.我正在尝试创建安装我的msi的wix burn bootstrapper.我在BA UI中添加了两个用于安装和取消的按钮.我正在使用C#进行BA UI设计.

我在安装按钮中添加了以下代码以进行启动安装.

  MySampleBA.Model.Engine.Detect();
  MySampleBA.hwnd = IntPtr.Zero;          
  MySampleBA.Model.Bootstrapper.PlanBegin += this.PlanBegin;
  MySampleBA.Model.Bootstrapper.DetectPackageComplete += this.DetectedPackage;
  MySampleBA.Model.Bootstrapper.DetectComplete += this.DetectComplete;
  MySampleBA.Model.Bootstrapper.PlanPackageBegin += this.PlanPackageBegin;
  MySampleBA.Model.Bootstrapper.PlanComplete += this.PlanComplete;
  MySampleBA.Model.Bootstrapper.ExecuteMsiMessage += this.ExecuteMsiMessage;
  MySampleBA.Model.Bootstrapper.ExecuteProgress += this.ApplyExecuteProgress;
  MySampleBA.Model.Bootstrapper.PlanMsiFeature += this.PlanMsiFeature;
  MySampleBA.Model.Bootstrapper.PlanPackageComplete += this.PlanPackageComplete;
  MySampleBA.Model.Bootstrapper.Progress += this.ApplyProgress;
  MySampleBA.Model.Bootstrapper.CacheAcquireProgress += this.CacheAcquireProgress;
  MySampleBA.Model.Bootstrapper.CacheComplete += this.CacheComplete;
  MySampleBA.Model.Bootstrapper.Error += this.ExecuteError;
  MySampleBA.Model.Bootstrapper.ExecutePackageComplete += this.ExecuteComplte;
Run Code Online (Sandbox Code Playgroud)

并使用启动安装

  MySampleBA.Model.Engine.Plan(LaunchAction.Install);
  MySampleBA.Model.Engine.Apply(MySampleBA.hwnd);
Run Code Online (Sandbox Code Playgroud)

安装工作正常.但我在中途取消安装时遇到问题.

我看到了bootstrapper应用程序回滚链接.但我无法了解IDCANCEL以及如何通过按钮单击触发错误事件.

任何人都可以通过单击BA UI中的取消按钮详细说明如何停止安装?

wix bootstrapper burn

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

在WPF中的视图中进行更改时,ViewModel中的文本框值不会更新

当我更改文本框值时,它不会在视图模型中更新.

这是我在视图中的文本框xaml

<TextBox Height="23" HorizontalAlignment="Left" Margin="153,65,0,0" Name="textBox2" VerticalAlignment="Top" Width="120" Text="{Binding Path=InstallPath, Mode=TwoWay}"/>
Run Code Online (Sandbox Code Playgroud)

完整的xaml视图,

<Window.Resources>
    <BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter" />
</Window.Resources>

<Grid>

    <Button Content="Configure Logger" Height="44" HorizontalAlignment="Left" Margin="402,125,0,0" Name="button1" VerticalAlignment="Top" Width="108" Click="button1_Click" />
    <Button Content="Load DB" Height="43" HorizontalAlignment="Left" Margin="402,200,0,0" Name="button3" VerticalAlignment="Top" Width="108" Click="button3_Click" />
    <TextBlock Height="23" HorizontalAlignment="Left" Margin="46,36,0,0" Name="textBlock1" Text="SQL Server" VerticalAlignment="Top" />
    <TextBox Height="23" HorizontalAlignment="Left" Margin="153,36,0,0" Name="textBox1" VerticalAlignment="Top" Width="120" TextChanged="textBox1_TextChanged" />
    <GroupBox Header="DB Names" HorizontalAlignment="Left" Margin="54,114,0,0" Name="groupBox1" VerticalAlignment="Top" >

    </GroupBox>


    <TextBlock Text="Test bootstrapper application." Margin="10" FontSize="18" HorizontalAlignment="Center" Foreground="Red" VerticalAlignment="Top" />
    <TextBlock Height="23" …
Run Code Online (Sandbox Code Playgroud)

wpf wix mvvm bootstrapper burn

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

Wix Burn:自定义Bootstrapper升级,但与旧版本并排安装

我正在努力解决我的自定义引导程序升级问题.通过关注这个线程,我正在使用LaunchAction.Install.

这确实升级了产品以及Boostrapper,但较旧的Bootstrapper仍然存在,如下面的屏幕截图所示.

我的添加/删除程序选项板的屏幕截图

如果我从这里调用ver 1.0.0.0,它会显示Dialog to Install,但不会执行任何操作.但是,调用ver 1.0.1.0会让我选择卸载产品.但是,在卸载时,它只会自行删除,并且"我的产品"会被遗忘.

我也尝试过

_bootstrapper.Engine.Plan(LaunchAction.UpdateReplace);
Run Code Online (Sandbox Code Playgroud)

_bootstrapper.Engine.Plan(LaunchAction.UpdateReplaceEmbedded);
Run Code Online (Sandbox Code Playgroud)

但它没有效果.

问题:如何在不落入上述情况的情况下升级旧安装?有谁能提供CustomBA升级的工作示例?

问候

wix bootstrapper burn

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

即使预装了Setup.exe,也会安装必备软件

我正在部署.NET应用程序与.NET Framework 4.0和VS 2010 C++可再发行组件作为先决条件.

当setup.exe在满足先决条件的计算机上运行时,引导程序会再次安装它们.

这是一个已知的问题?什么是解决它的正确方法?

.net deployment installation windows-installer bootstrapper

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

WiX可以生成MSI引导程序而不是exe吗?

有没有理由说引导程序是一个exe而不是MSI?而且,有没有办法生成MSI?

我需要有多个本地化的引导程序,并希望应用转换,就像可以为WiX MSI完成.而且,由于引导程序使用相同的本地化文件,因此能够对引导程序使用与安装程序相同的方法是很好的.

wix bootstrapper

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

如何在同一个ASP.Net MVC项目中使用Unity MVC和Unity WebAPI

我正在尝试将WebAPI添加到现有的ASP.Net MVC项目中,我的问题是关于Unity:

在单独使用UnityMVC之前,该项目在App_Start文件夹中具有UnityConfig类,其代码如下:

container.RegisterType<IUnitOfWork, UnitOfWork>(new PerRequestLifetimeManager());
container.RegisterType<IDataContext, tfe_schemaContext>(new PerRequestLifetimeManager());

container.RegisterType<IPrintJobService, PrintJobService>(new PerRequestLifetimeManager());
container.RegisterType<IRepository<print_job>, Repository<print_job>>(new PerRequestLifetimeManager());
Run Code Online (Sandbox Code Playgroud)

为了使用WebAPI,我通过NuGet添加了UnityWebAPI,这个动作在App_Start文件夹中添加了UnityMvcActivator类.

执行项目时显示以下错误:"类型Unity.WebApi.UnityDependencyResolver似乎未实现Microsoft.Practices.ServiceLocation.IServiceLocator.参数名称:commonServiceLocator".

我使用Bootstrapper类找到了不同的代码示例,但没有使用UnityConfig类或UnityMvcActivator.

在Bootrstrapper类中,类型的注册是这样的:

container.RegisterType<IProductServices, ProductServices>().RegisterType<UnitOfWork>(new HierarchicalLifetimeManager());
Run Code Online (Sandbox Code Playgroud)

我对这一切有点失落,请帮助我理解并修复此错误.

asp.net-mvc unity-container bootstrapper asp.net-web-api2

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

引导程序的作用和目的是什么?

我正在开发一个应用程序,它使用bootscrapper对象在应用程序首次启动时执行某些操作.例如,注册IoC对象,将某些变量放入asp.net应用程序会话对象,进行一些安全检查等.

我浏览了一下互联网,无法找到关于bootscrapper模式或任何有关该主题的文章的参考.

这是一个不同名称的已知模式吗?

编辑:只要应用程序启动,就会运行该对象.例如,我在wcf服务和ASP.net应用程序中看到过它.

.net bootstrapper

0
推荐指数
1
解决办法
322
查看次数

WiX 引导程序 - 使用 HexStyle 禁用控件

我有一个 WiX 引导程序主题 xml 文件,我想永久禁用一个控件。我试图设置HexStyleWS_DISABLED链接)的值。但是,该控件仍处于启用状态。任何人都知道我是否可以使用HexStyle或知道另一种永久禁用控件的方法。我使用WixStandardBootstrapperApplication.RtfLicenseBootstrapperApplication。

wix bootstrapper wix3.8

0
推荐指数
1
解决办法
951
查看次数

如何在wix包中编写注册表项和值?

我可以在wix的setup项目中编写一个注册表项和值,代码如下:

<RegistryKey Id="WinApp" Root="HKLM" Key="Software\App\[ProductName]" Action="createAndRemoveOnUninstall" >
      <RegistryValue Type="string" Name="InstallName" Value="[ProductName]" Action="write" KeyPath="yes"></RegistryValue>
    </RegistryKey>
Run Code Online (Sandbox Code Playgroud)

我怎么能在bootstrapper项目中做?

registry wix bootstrapper

-1
推荐指数
1
解决办法
2249
查看次数