Newb question - need advice

I have read through the PDF that comes with the download, and I’ve scrolled through the help .ps1.

I have an .exe that I need to deploy, with a message to my users, and allowing them to defer x times.

Question/assumptions:

  1. I think I need to use execute-process command. Do I simply replace the execute-MSI line in the Deploy-Application.ps1?
  2. The .exe I need to run has an added string value that needs to be in the command. How do I do that? this is what I mean: executable /v"added string value /qn" - Is how I typically setup my batch file to run the install.

I normally install this with a simple batch file that runs that executable from a command line, and it just works. This one does too, BUT, this version also upgrades another piece, that ends up breaking all network connectivity until the machine is rebooted. Which is why I would like to use PSAppDeployToolkit, to inform the user of what’s going to happen, allowing them to either defer the install, or go ahead and close anything they need to, and run the upgrade.

Any help, advice, tips, condolences would be greatly appreciated.

Execute-Process command, yes.

Now the parameter part depends on your EXE.
If it’s Installsheild, then this will help: InstallSheild Setup - How to install, uninstall, and log silently

That looks like it should help, thank you.

I’m not using InstallShield. The EXE is what was provided by the vendor. In looking at the Deploy-Application.ps1, In the Installation area, would I replace that whole "If ($useDefaultMsi) section, or just the Execute-MSI line?

Sorry, if this is a stupid question, I’m just trying to figure this out with minimal Powershell experience.

I would comment out the $useDefaultMsi section and replace the Execute-MSI line.

If you provide the command line in CMD, I (or someone else ) can translate to PowerShell+PSADT for your script

Appreciate it. I am making progress. I commented out all the default MSI stuff, added the execute-process line, and it worked… to a point. I was hoping for a silent install, but it didn’t go that way. Also, I apologize, the EXE absolutely kicks off InstallShield for this install. I’m just not using Installshield to create the EXE.

This is the command line that I use in my batch file:
"%~dp0\FORCEPOINT-ONE-ENDPOINT-x64" /v"WSCONTEXT=blahblahblah /qn"

It works because when I deploy this with SCCM, the install EXE is in the same directory, which is what the %~dp0\ looks at. This is what I put into my deploy-application.ps1:
Execute-Process -Path Forcepoint-one-Endpoint-x64.exe -Parameters /v"WSCONTEXT=blahblahblah /qn"
I’m assuming that the /qn is placed incorrectly, or that there is something else I need for the PS script to run the command silently. It’s early, just got into the office, and haven’t dug into the documentation for that, but pretty sure I saw something about running silently.

The other big question I have is if, and how, I can customize the different pop-up windows. This install breaks pretty much all network functionality until a reboot, so I would like to customize the Welcome pop-up to say that, and ask them to close ALL applications before proceeding. I’m leaving the Defer button, in case they can’t take the time right then, and I’d like a post-install pop-up that maybe has a Reboot button, and if not possible, a message stating that they MUST reboot now.

If you put Forcepoint-one-Endpoint-x64.exe in the \Files\ folder, it will find it.
If you want to point to it in the \Files\ folder you can do this:

Execute-Process -Path "$dirFiles\Forcepoint-one-Endpoint-x64.exe" -Parameters /v"WSCONTEXT=blahblahblah /qn"

Now to force users to close apps you use Show-InstallationWelcome -CloseApps
The bad news is that you must list the apps by name. I don’t think you can do * for All.
Here’s an example I have:

Write-log Asking user to close apps and close them forcibly after 5 minutes|
Show-InstallationWelcome -CloseApps 'lync,Winword,excel,msaccess,onenote,orgchart,outlook,powerpnt,groove,OfficeC2RClient,OfficeClickToRun' -CheckDiskSpace -PersistPrompt -CloseAppsCountdown 300 -TopMost $true

On caveat is that there are SOME apps that will not be closable by the user so you do this right after:
Show-InstallationWelcome -CloseApps 'OfficeC2RClient,OfficeClickToRun' -CheckDiskSpace -silent $true #Kill without warning user because they can't kill these processes anyway

Oh and all PSADT popup messages only show if installation is INTERACTIVE

As for reboot, I would definitely use the countdown:

Write-log "Show 60 Second countdown to a forced reboot"
Show-InstallationRestartPrompt -Countdownseconds 61 -CountdownNoHideSeconds 60 -NoSilentRestart $false

More good info, thank you for that.

The script works, as I posted, I followed some example and just put -Path executable name.

I don’t know that I’m going to be allowed to forcefully close any apps, and for the install to be successful, none “need” to be closed. But, with this upgrade breaking networking, there is concern that a file that was opened from a server that is being worked on may end up getting corrupted, or if a person is in a Teams meeting when the upgrade happens, they get dropped, stuff like that.

I was just looking at the Show-InstallationRestartPrompt, to see how that works. In that window, if a user choosed Restart Later, what happens? Will this window pop up again after x minutes, or will it just auto-reboot after x minutes? And what does x equal?

Any tips on making it so the InstallShield itself does NOT pop up? I want the dialogs, but once the user chooses to install, I would like the install itself be silent, but currently, it pops up for me to interact with it.

I remember needing to modify what happens when a user choosed [Restart Later] in Show-InstallationRestartPrompt.
I think by default it reboots right away.

If you need it, I’ll post the changes I did to Show-InstallationRestartPrompt.

As for installsheild, see: InstallSheild Setup - How to install, uninstall, and log silently

First off, thank you for sticking with me on this. I got the install working, silent, as I want, with this:

Execute-Process -Path installer.exe -Parameters " /v`"WSCONTEXT=blahblah /qn`" -SMS"

(there are ` marks after the /v and the /qn, but they aren’t displaying in my post) [Fixed by Moderator using <\> tool]

When I run it, the welcome screen comes up, I click Continue, and the install happens, without the InstallShield windows. The install progress window pops up, spins for a bit, then closes. At this point, I expect the Show-InstallationRestartPrompt to come up, which I have as this:

Show-InstallationRestartPrompt -Countdownseconds 600 -CountdownNoHideSeconds 60

But, once that install progress window closes, within a second or two, Powershell crashes. I do, however, get a bubble popup in the lower right corner, saying the install completed. And, if I look in Add/Remove programs, I do see the new version installed.

I think I figured out why the Powershell script ends so fast.

I suspect installer.exe actually spawn a child process that actually does the installation.
and once this Child process is rolling, installer.exe ends, Execute-Process sees that and PSADT goes to the next line.

If this is the case, right after Execute-Process line we will need to either:
-watch the child process and wait until it ends (if the child process name never changes)
-look for the last thing the child process does before ending, and wait 10 seconds.(JIC) (This is unreliable, BTW.)
-watch the log file that the child process creates, and wait for it to stop growing (I have a function just for this)

For S&Gs, I put the Show-InstallationRestartPrompt line back to the original Show-InstallationPrompt -Message line, and it worked fine. Changed only the command back to Show-InstallationRestartPrompt, got rid of the rest of the line, put the countdowns back, and Powershell crashes. So, worst case, I can rely on the users to actually read instructions, and read the message on the closing window, and perform the reboot. But, it would be nice to have a button for them to push to do the reboot automatically, since most people would see the reboot request and just decide to reboot later, which leaves the computer in a broken state.

I just looked at the install log, and everything looks like the Post-install stuff works with the restart prompt.

<![LOG[[Post-Installation] :: Invoking Show-InstallationRestartPrompt asynchronously with a [600] second countdown…]LOG]!><time=“10:46:13.141-420” date=“10-25-2022” component=“Show-InstallationRestartPrompt” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: Closing the installation progress dialog.]LOG]!><time=“10:46:13.268-420” date=“10-25-2022” component=“Close-InstallationProgress” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: Closing the installation progress dialog’s runspace.]LOG]!><time=“10:46:13.289-420” date=“10-25-2022” component=“Close-InstallationProgress” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: Forcepoint_ForcepointOneEndpoint_22.06.5578_EN_01 Installation completed with exit code [0].]LOG]!><time=“10:46:13.351-420” date=“10-25-2022” component=“Exit-Script” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: Check if PowerPoint is in either fullscreen slideshow mode or presentation mode…]LOG]!><time=“10:46:13.361-420” date=“10-25-2022” component=“Test-PowerPoint” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: PowerPoint application is not running.]LOG]!><time=“10:46:13.381-420” date=“10-25-2022” component=“Test-PowerPoint” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: PowerPoint is running in fullscreen mode [False].]LOG]!><time=“10:46:13.391-420” date=“10-25-2022” component=“Test-PowerPoint” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: Display balloon tip notification asynchronously with message [Installation complete.].]LOG]!><time=“10:46:13.419-420” date=“10-25-2022” component=“Show-BalloonTip” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: [C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe] is a valid fully qualified path, continue.]LOG]!><time=“10:46:13.471-420” date=“10-25-2022” component=“Execute-Process” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: Working Directory is [C:\Windows\System32\WindowsPowerShell\v1.0].]LOG]!><time=“10:46:13.481-420” date=“10-25-2022” component=“Execute-Process” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: Executing [C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe [PowerShell ScriptBlock]]…]LOG]!><time=“10:46:13.491-420” date=“10-25-2022” component=“Execute-Process” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: NoWait parameter specified. Continuing without waiting for exit code…]LOG]!><time=“10:46:13.532-420” date=“10-25-2022” component=“Execute-Process” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>
<![LOG[[Post-Installation] :: -------------------------------------------------------------------------------]LOG]!><time=“10:46:13.562-420” date=“10-25-2022” component=“Exit-Script” context=“adminaccount” type=“1” thread=“3032” file=“Deploy-Application.ps1”>

I backed up a bit. Changed the Execute-process line so that the Installshield wizard comes up. Next through it, click Finish at the end.

If post-install is using Show-InstallationPrompt, that pops up. This would allow me to customize, and tell the user that they MUST reboot now.

If post-install is using Show-InstallationRestartPrompt, powershell crashes.

So, even if I manually step through the install, and click Finish, the restart window that I really want, doesn’t come up. Is there some other logging aside from the default install log that I can enable, or look at, to see what’s happening?

PSADT creates logs in C:\windows\Logs\Software\

That’s what I need to help you more

got it. Is there a way to attach a file? I did paste in the post-installation section above for one of the runs where powershell crashed. I looked for a way to get the whole file for you, but didn’t see anything.

I would post it here and use the </> editing tool to format it as code.
Only the last lines from where it start to run the Execute-process line to the end is needed.

<![LOG[[Installation] :: [Forcepoint-one-Endpoint-x64.exe] successfully resolved to fully qualified path [C:\CDFW_Apps\Toolkit\Files\FORCEPOINT-ONE-ENDPOINT-x64.exe].]LOG]!><time="15:37:20.776-420" date="10-27-2022" component="Execute-Process" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Installation] :: Working Directory is [C:\CDFW_Apps\Toolkit\Files].]LOG]!><time="15:37:20.811-420" date="10-27-2022" component="Execute-Process" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Installation] :: Executing [C:\CDFW_Apps\Toolkit\Files\FORCEPOINT-ONE-ENDPOINT-x64.exe /v"WSCONTEXT=blahblah /qn" -SMS]...]LOG]!><time="15:37:20.819-420" date="10-27-2022" component="Execute-Process" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Installation] :: Execution completed successfully with exit code [0].]LOG]!><time="15:37:53.537-420" date="10-27-2022" component="Execute-Process" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Invoking Show-InstallationRestartPrompt asynchronously with a [600] second countdown...]LOG]!><time="15:37:53.688-420" date="10-27-2022" component="Show-InstallationRestartPrompt" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Closing the installation progress dialog.]LOG]!><time="15:37:53.805-420" date="10-27-2022" component="Close-InstallationProgress" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Closing the installation progress dialog's runspace.]LOG]!><time="15:37:53.826-420" date="10-27-2022" component="Close-InstallationProgress" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Forcepoint_ForcepointOneEndpoint_22.06.5578_EN_01 Installation completed with exit code [0].]LOG]!><time="15:37:53.899-420" date="10-27-2022" component="Exit-Script" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Check if PowerPoint is in either fullscreen slideshow mode or presentation mode...]LOG]!><time="15:37:53.914-420" date="10-27-2022" component="Test-PowerPoint" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: PowerPoint application is not running.]LOG]!><time="15:37:53.945-420" date="10-27-2022" component="Test-PowerPoint" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: PowerPoint is running in fullscreen mode [False].]LOG]!><time="15:37:53.952-420" date="10-27-2022" component="Test-PowerPoint" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Display balloon tip notification asynchronously with message [Installation complete.].]LOG]!><time="15:37:53.983-420" date="10-27-2022" component="Show-BalloonTip" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: [C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe] is a valid fully qualified path, continue.]LOG]!><time="15:37:54.052-420" date="10-27-2022" component="Execute-Process" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Working Directory is [C:\Windows\System32\WindowsPowerShell\v1.0].]LOG]!><time="15:37:54.062-420" date="10-27-2022" component="Execute-Process" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Executing [C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe [PowerShell ScriptBlock]]...]LOG]!><time="15:37:54.064-420" date="10-27-2022" component="Execute-Process" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: NoWait parameter specified. Continuing without waiting for exit code...]LOG]!><time="15:37:54.114-420" date="10-27-2022" component="Execute-Process" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: -------------------------------------------------------------------------------]LOG]!><time="15:37:54.143-420" date="10-27-2022" component="Exit-Script" context="AD\adminaccount" type="1" thread="10488" file="Deploy-Application.ps1">

Does powershell actually crash or does your installation take only 33 seconds to complete and reboot?

If it’s crashing, I’m suspecting that FORCEPOINT-ONE-ENDPOINT-x64.exe is causing a reboot before PSADT can finish up and display the countdown to reboot dialog.

To find out, force FORCEPOINT-ONE-ENDPOINT-x64.exe to create a log file:

Execute-Process -Path FORCEPOINT-ONE-ENDPOINT-x64.exe -Parameters " /v`"WSCONTEXT=blahblah /qn /L* \`"$configToolkitLogDir\FORCEPOINT.log\`"`" -SMS"

FYI: $configToolkitLogDir is the folder where PSADT will create its log file so both log files will be in the same folder.

So after changing the execute line, as soon as I hit continue on the welcome screen, I get the error message, and Powershell crashes.
Screenshot 2022-11-01 141429

This is the same message I was getting at the end of the install before, trying to use the Show-InstallRestartPrompt command.

Here is the execute process line:

Execute-Process -Path Forcepoint-one-Endpoint-x64.exe -Parameters "/v`"WSCONTEXT=blahblahblah /qn /L* \`"$configToolkitLogDir\Forcepoint.log\`"`" -SMS"

Strange thing, the install log file looks like it went through the entire install, but nothing was changed on the machine, and only the original log file was created, no additional log in the c:\windows\logs\software location.

<![LOG[[Pre-Installation] :: User selected to continue...]LOG]!><time="14:13:43.126-420" date="11-01-2022" component="Show-InstallationWelcome" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Pre-Installation] :: Check if PowerPoint is in either fullscreen slideshow mode or presentation mode...]LOG]!><time="14:13:45.231-420" date="11-01-2022" component="Test-PowerPoint" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Pre-Installation] :: PowerPoint application is not running.]LOG]!><time="14:13:45.247-420" date="11-01-2022" component="Test-PowerPoint" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Pre-Installation] :: PowerPoint is running in fullscreen mode [False].]LOG]!><time="14:13:45.247-420" date="11-01-2022" component="Test-PowerPoint" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Pre-Installation] :: Display balloon tip notification with message [Installation started.].]LOG]!><time="14:13:45.269-420" date="11-01-2022" component="Show-BalloonTip" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Pre-Installation] :: Spin up progress dialog in a separate thread with message: [Installation in progress. Please wait...].]LOG]!><time="14:13:45.416-420" date="11-01-2022" component="Show-InstallationProgress" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Installation] :: [Forcepoint-one-Endpoint-x64.exe] successfully resolved to fully qualified path [C:\CDFW_Apps\Toolkit\Files\FORCEPOINT-ONE-ENDPOINT-x64.exe].]LOG]!><time="14:13:46.521-420" date="11-01-2022" component="Execute-Process" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Installation] :: Working Directory is [C:\CDFW_Apps\Toolkit\Files].]LOG]!><time="14:13:46.558-420" date="11-01-2022" component="Execute-Process" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Installation] :: Executing [C:\CDFW_Apps\Toolkit\Files\FORCEPOINT-ONE-ENDPOINT-x64.exe /v"WSCONTEXT=blahblahblah /qn /L* \"C:\WINDOWS\Logs\Software\Forcepoint.log\"" -SMS]...]LOG]!><time="14:13:46.567-420" date="11-01-2022" component="Execute-Process" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Installation] :: Execution completed successfully with exit code [0].]LOG]!><time="14:13:48.194-420" date="11-01-2022" component="Execute-Process" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Invoking Show-InstallationRestartPrompt asynchronously with a [600] second countdown...]LOG]!><time="14:13:48.398-420" date="11-01-2022" component="Show-InstallationRestartPrompt" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Closing the installation progress dialog.]LOG]!><time="14:13:48.545-420" date="11-01-2022" component="Close-InstallationProgress" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Closing the installation progress dialog's runspace.]LOG]!><time="14:13:48.566-420" date="11-01-2022" component="Close-InstallationProgress" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Forcepoint_ForcepointOneEndpoint_22.06.5578_EN_01 Installation completed with exit code [0].]LOG]!><time="14:13:48.684-420" date="11-01-2022" component="Exit-Script" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Check if PowerPoint is in either fullscreen slideshow mode or presentation mode...]LOG]!><time="14:13:48.722-420" date="11-01-2022" component="Test-PowerPoint" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: PowerPoint application is not running.]LOG]!><time="14:13:48.735-420" date="11-01-2022" component="Test-PowerPoint" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: PowerPoint is running in fullscreen mode [False].]LOG]!><time="14:13:48.755-420" date="11-01-2022" component="Test-PowerPoint" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Display balloon tip notification asynchronously with message [Installation complete.].]LOG]!><time="14:13:48.795-420" date="11-01-2022" component="Show-BalloonTip" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: [C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe] is a valid fully qualified path, continue.]LOG]!><time="14:13:48.825-420" date="11-01-2022" component="Execute-Process" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Working Directory is [C:\Windows\System32\WindowsPowerShell\v1.0].]LOG]!><time="14:13:48.835-420" date="11-01-2022" component="Execute-Process" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: Executing [C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe [PowerShell ScriptBlock]]...]LOG]!><time="14:13:48.853-420" date="11-01-2022" component="Execute-Process" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: NoWait parameter specified. Continuing without waiting for exit code...]LOG]!><time="14:13:48.885-420" date="11-01-2022" component="Execute-Process" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">
<![LOG[[Post-Installation] :: -------------------------------------------------------------------------------]LOG]!><time="14:13:48.915-420" date="11-01-2022" component="Exit-Script" context="AD\Admuseraccount" type="1" thread="13644" file="Deploy-Application.ps1">```

With Forcepoint-one-Endpoint-x64.exe spending exactly 2 seconds installing and exiting with 0 usually means one of 2 thing: Pending reboot or already installed.

Maybe your test box already has it installed and you are installing over-top.