Just in case anyone was interested in using Winbuilder, I have a very basic script that has allowed the inclusion of the recovery components by copying from an installed version of Endpoint.
I have only tested it on a Win10PE x64 build, however the script accounts for the reg entries for .net 4 on both x86 and x64
.net is not copied in this script, and I am using a script within the project for the .net 4 as required. (have included the registry entries in the event you wish to mod the script to copy the .net files yourself)
.net found in "Windows\Microsoft.net" however only a portion of the folder is required
save the code below as a .script file and place in the apps folder of your winbuilder project. I am sure it can be cleaner... but it gets the job done.
created from the file list and .reg files found within the installed application.
It appears that the same files are able to be used in all x86 and x64 builds, as I did a file comparison, but again, not tested.
Of course, you can just use the already great Veeam boot.wim, I just wanted to see if it could be done. To benefit from the Veeam built wim image, just take the boot.wim and include it in a multi-boot Winbuilder Project.
Code: Select all
----------include below--------------
[Main]
Title=Veeam Endpoint
Type=script
Selected=True
Level=5
Author=WinBuilder Version 082
Credits=PEBuilder plugin - Veeam and Jamykid
[Variables]
%ProgramEXE%=Veeam.EndPoint.Recovery.exe
%ProgramFolder%=VeeamRecovery
%ProgramTitle%=Veeam
%appsource%=C:\Program Files\Veeam\Endpoint Backup\
%appdestination%=%Target_Prog%\%ProgramFolder%\
[Process]
Echo,Processing %ProgramTitle%...
//RunFromRam,%pCheckBox1%
If,not,EXISTDIR,%appdestination%Microsoft.VC80.CRT,DirMake,%appdestination%Microsoft.VC80.CRT
If,not,EXISTDIR,%appdestination%x64,DirMake,%appdestination%x64
If,not,EXISTDIR,%appdestination%x86,DirMake,%appdestination%x86
If,not,EXISTDIR,%TargetDir%\windows\Microsoft.NET,DirMake,%TargetDir%\windows\Microsoft.NET
If,not,EXISTDIR,%Target_Prog%\Common Files\Veeam\Backup And Replication,DirMake,%Target_Prog%\Common Files\Veeam\Backup And Replication
If,%pCheckBox2%,Equal,True,Add_Shortcut,StartMenu,%pTextBox1%,,%pTextBox2%
If,%pCheckBox3%,Equal,True,Add_Shortcut,Desktop,%pTextBox1%,,%pTextBox2%
If,%pCheckBox4%,Equal,True,Add_Shortcut,QuickLaunch
FileCopy,C:\Program Files\Common Files\Veeam\Backup and Replication\VeeamFlrDrvInstaller.dll,%Target_Prog%\Common Files\Veeam\Backup And Replication\
FileCopy,%WindowsDir%\system32\msi.dll,%TargetDir%\windows\system32\
FileCopy,%WindowsDir%\system32\shfolder.dll,%TargetDir%\windows\system32\
FileCopy,%appsource%vblkid,%appdestination%
FileCopy,%appsource%Veeam.Endpoint.Recovery.exe,%appdestination%
FileCopy,%appsource%Veeam.Endpoint.Recovery.exe.config,%appdestination%
FileCopy,%appsource%Interop.VeeamGuestHelperCtrl.dll,%appdestination%
FileCopy,%appsource%Interop.VeeamTransportDll.dll,%appdestination%
FileCopy,%appsource%Ionic.Zip.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.AgentProvider.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.CatalogFsLib.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.Common.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.Configuration.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.Core.Common.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.Core.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.Crypto.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.DBAccessor.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.DBCreator.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.DBManager.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.EsxManager.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.HvSureBackup.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.Interaction.CatalogClient.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.Interaction.DataCollector.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.Interaction.Management.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.LicenseLib.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.Model.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.ProxyProvider.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.PSService.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.SSH.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.SureBackup.Common.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.SureBackup.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.UI.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.UI.Common.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.Validator.Core.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.VcdLib.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.ViSoap.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.VssProvider.dll,%appdestination%
FileCopy,%appsource%Veeam.Backup.Win32API.dll,%appdestination%
FileCopy,%appsource%Veeam.Common.Remoting.dll,%appdestination%
FileCopy,%appsource%Veeam.EndPoint.Core.dll,%appdestination%
FileCopy,%appsource%Veeam.EndPoint.System.dll,%appdestination%
FileCopy,%appsource%Veeam.EndPoint.Transport.dll,%appdestination%
FileCopy,%appsource%Veeam.EndPoint.Common.dll,%appdestination%
FileCopy,%appsource%Veeam.Tape.Core.dll,%appdestination%
FileCopy,%appsource%Veeam.Tape.Database.dll,%appdestination%
FileCopy,%appsource%Veeam.Tape.Interaction.dll,%appdestination%
FileCopy,%appsource%Veeam.Tape.Model.dll,%appdestination%
FileCopy,%appsource%CInterop.VeeamCrypto.dll,%appdestination%
FileCopy,%appsource%VeeamDeploymentDll.dll,%appdestination%
FileCopy,%appsource%VeeamEndpointSysUtils.dll,%appdestination%
FileCopy,%appsource%CInterop.VeeamProxyClient.dll,%appdestination%
FileCopy,%appsource%boost_thread-vc80-mt-1_35.dll,%appdestination%
FileCopy,%appsource%VeeamTransportDll.dll,%appdestination%
FileCopy,%appsource%vmGuestLib.dll,%appdestination%
FileCopy,%appsource%VeeamFSR.sys,%appdestination%
DirCopy,%appsource%x86,%appdestination%
DirCopy,%appsource%x64,%appdestination%
DirCopy,%appsource%Microsoft.VC80.CRT,%appdestination%
// copy needed .net files - use .net script
// add reg entries as found in B&R
RegHiveLoad,Tmp_Software,%RegSoftware%
RegWrite,HKLM,0x1,Tmp_Software\Microsoft\.NETFramework\Policy\v4.0,30319,30319-30319
If,%version%,Smaller,80,RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\.NETFramework\v4.0.30319\SKUs\.NETFramework,Version=v4.0"
Else,RegWrite,HKLM,0x0,"Tmp_Software\Microsoft\.NETFramework\v4.0.30319\SKUs\.NETFramework,Version=v4.0"
If,%version%,Smaller,80,RegWrite,HKLM,0x1,Tmp_Software\Microsoft\.NETFramework\v4.0.30319\SKUs\Default
Else,RegWrite,HKLM,0x0,Tmp_Software\Microsoft\.NETFramework\v4.0.30319\SKUs\Default
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\CDF\v4.0",WMIInstalled,1
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\CDF\v4.0",NetTcpPortSharingInstalled,1
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\CDF\v4.0",NonHttpActivationInstalled,1
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\CDF\v4.0",HttpNamespaceReservationInstalled,1
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4\Full",Version,4.0.30319
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4\Full",TargetVersion,4.0.0
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4\Full",Install,1
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4\Full",MSI,1
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4\Full",Servicing,0
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4\Full\1033",Version,4.0.30319
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4\Full\1033",TargetVersion,4.0.0
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4\Full\1033",Install,1
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4\Full\1033",Servicing,0
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4.0",,deprecated
If,%SourceArch%,Equal,x64,Begin
RegWrite,HKLM,0x1,Tmp_Software\Microsoft\.NETFramework,InstallRoot,X:\Windows\Microsoft.NET\Framework64\
RegWrite,HKLM,0x4,Tmp_Software\Microsoft\.NETFramework,Enable64Bit,1
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\CDF\v4.0",SMSvcHostPath,X:\Windows\Microsoft.NET\Framework64\v4.0.30319\
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4\Full",InstallPath,X:\Windows\Microsoft.NET\Framework64\v4.0.30319\
End
If,%SourceArch%,Equal,x86,Begin
RegWrite,HKLM,0x1,Tmp_Software\Microsoft\.NETFramework,InstallRoot,X:\Windows\Microsoft.NET\Framework\
RegWrite,HKLM,0x4,Tmp_Software\Microsoft\.NETFramework,Enable64Bit,0
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\CDF\v4.0",SMSvcHostPath,X:\Windows\Microsoft.NET\Framework\v4.0.30319\
RegWrite,HKLM,0x1,"Tmp_Software\Microsoft\NET Framework Setup\NDP\v4\Full",InstallPath,X:\Windows\Microsoft.NET\Framework\v4.0.30319\
End
RegHiveUnLoad,Tmp_Software
[Interface]
pCheckBox1="Run from ram (boot.wim)",1,3,16,50,183,18,True
pCheckBox2="Create Startmenu Shortcut",1,3,17,89,185,18,True
pTextBox1="Start menu folder (blank for none):",1,0,33,125,168,21,
pTextBox2="Name for Shortcuts:",1,0,33,168,168,21,"Veeam Recovery"
pCheckBox4="Create Quicklaunch Shortcut",1,3,18,195,200,18,True
pCheckBox3="Create Desktop Shortcut",1,3,18,213,200,18,True
pBevel2=pBevel2,1,12,-1,21,221,225
pWebLabel1="Homepage or Download",1,10,1,2,187,18,http://www.Veeam.com
pTextLabel1=Options:,1,1,10,24,105,18,8,Bold
pBevel1=pBevel1,1,12,8,43,203,31
pBevel2=pBevel2,1,12,-1,21,221,225