Unattended Installation

Installation Script

Because there are many options to configure via the command line install, we have created a PowerShell Script to use as a ‘wrapper’ for the MSI Install.
Modify the script to enable the parameters you would like to define. The parameters are defined in the tables below.

Command Line Installation

The install can be configured through the following basic commands:
MSIEXEC /i "2Pint Software 2PXE Service (x64).msi" INSTALLTYPE=”2” SERVICE_USERNAME=<domain>\<username> SERVICE_PASSWORD=<password> REMOTEINSTALL_PATH=C:\RemoteInstall /l* C:\Temp\2PXE.installation.log
The above examples are ‘bare minimum’ examples. You may want to configure more properties during install, and we have included a reference of all the MSI properties below:

Mandatory MSI Properties

Property
Value
Description
INSTALLTYPE
1 = PowerShell Integration 2 = ConfigMgr Integration
Type of installation to execute.
SERVICE_USERNAME
"LocalSystem" or "domain\username"
The account in which the 2PXE service runs as.
SERVICE_PASSWORD
<password>
The password if domain\username was used as the SERVICE_USERNAME property.

Optional MSI Properties

Property
Value
Description
CONFIGMGRSQL
1 = enable a SQL connection to the ConfigMgr DB 0 = use HTTP via the Management Point to connect to the ConfigMgr DB
Defines the mechanism used to connect to the ConfigMgr DB.
RUNTIME_DATABASE_LOGON_TYPE
"WinAuthCurrentUser" = Integrated security "SQLAuth" = SQL Security
Defines the type of logon type used to connect to the ConfigMgr DB
ODBC_SERVER
"myserverfqdn.com"
The FQDN of the ConfigMgr DB server.
RUNTIME_DATABASE_NAME
Ex: CM_<SiteCode>
The name of the ConfigMgr database.
REMOTEINSTALL_PATH
<path to remote install folder>
Media folder the 2PXE service uses to store bootable content.
DEBUGLOG_PATH
"C:\MyLogfiles\2PXE.log"
Path to the log file.
DEBUGLOG
1 = enable 0 = disable
Used to enable or disable debug logging.
POWERSHELLSCRIPTALLOWBOOT_PATH
"path to script"
Path to the PowerShell extension script for boot requests.
POWERSHELLSCRIPTIMAGES_PATH
"path to script image"
Path to the PowerShell extension for image selection.
RUN_ON_DHCP_PORT
1 = enable 0 = disable
Specifies if the service should respond on DHCP port.
RUN_ON_PXE_PORT
1 = enable 0 = disable
Specifies if the service should respond on PXE port.
RUN_TFTP_SERVER
1 = enable 0 = disable
Specifies if the built-in TFTP Server should be started.
RUN_HTTP_SERVER
1 = enable 0 = disable
Specifies if the built-in HTTP WCF Server should be started.
EMBEDDEDSDI
1 = enable 0 = disable
Use an embedded boot.sdi image.
F12TIMEOUT
"10000"
F12 prompt timout for iPXE loaders for non mandatory deployments in milliseconds.
IPXELOADERS
1 = use iPXE boot loaders 0 = 2PXE will use Windows boot loaders
Determines which boot loaders should be used for PXE booting.
UNKNOWNSUPPORT
1 = enable 0 = disable
Enables Unknown Machine support in Configuration Manager.
PORTNUMBER
"port number"
2PXE Http Service Port (8050 by default).
POWERSHELLSCRIPTALLOWBOOT_PATH
c:\myscripts
Set only if using custom path location for .ps1 scripts.
POWERSHELLSCRIPTIMAGES_PATH
c:\myscripts
Set only if using custom path location for .ps1 scripts.
INSTALLFOLDER
C:\MyInstallPath
Default is C:\Program Files\2pint Software.
ENABLESCCMMENUCOUNTDOWN
"10000"
Countdown for menu timeout if nothing is selected in Millisecs.
ENABLESCCMMANDATORYCOUNTDOWN
"30000"
Countdown for Mandatory deployments - the deployment will be executed after this expires in Millisecs.
SCCMREPORTSTATE
1 = enable 0 = disable
"1" Instructs 2PXE to send SCCM state messages for mandatory deployments. 1 to send, 0 to not send.
WIMBOOTPARAMS
Possible parameters are: gui, pause, pause=quiet, rawbcd, index=x
"gui" command line for wimboot.
ENABLEIPXEANYWHEREWEBSERVICE
"0” Specifies to use iPXE Anywhere Web Service. 0 to disable 1 - reporting functionality only 2 to move the entire request over to the web service + reporting. 3 is 1+2 and the ability to execute cmdline from iPXE WS in WiNPE
BootRequest = 1,
Syslog = 2
ReportBootConfiguration = 4,
ReportDLStart = 8,
ReportDLComplete = 16,
ReportDLBoot = 32,
RunCmdLineWinPE = 64
For example:
A value of 62 (2+4+8+16+32=62) gives you all but BootRequest and RunCmdLineWinPE. Therefore
for iPXE and StifleR Integration you would have to set it to a minimum of; 2+4+8+16+32 = 62
IPXEANYWHEREWEBSERVICEURI
"http://url:Port"
Specifies the address and Port for the iPXE Anywhere Web Service.
NETWORKACCESS_USERNAME
"[%USERDOMAIN]\[%USERNAME]"
The user name and password to connect to a distribution point.
NETWORKACCESS_PASSWORD
“A123456!"
The password to be used to connect to a distribution point.
FWTFTP
1 = enable 0 = disable
Set 1 to allow the installer to create the Port 69 UDP Firewall exception.
FWDHCP
1 = enable 0 = disable
Set 1 to allow the installer to create the Port 67 UDP Firewall exception.
FWPROXYDHCP
1 = enable 0 = disable
Set 1 to allow the installer to create the Port 4011 UDP Firewall exception.
FWHTTP
1 = enable 0 = disable
Set 1 to allow the installer to create the Port 8050 TCP Firewall exception.
BINDTOIP
<IP Address>
Enter the server NIC IP address to which to bind the service.
USEHYPERTHREAD
1 = enable 0 = disable
To run the service with hyperthreading.