V4.1.5 - Error when using Show-ADTInstallationWelcome in Invoke-AppDeployToolkit through PDQ

This seems to work when packaged for Intune, but not when deployed with PDQ

[Bug] Error when trying to use Show-ADTInstallationWelcome through PDQ Deploy - Access is denied · Issue #1743 · PSAppDeployToolkit/PSAppDeployToolkit

Details are all in the bug report above, but I'll also put the error below so anyone searching for it in a search engine is able to find this thread:

[2025-09-11T08:52:16.3305738-05:00] [Pre-Install] [Show-ADTInstallationWelcome] [Error] :: Exception calling "Remediate" with "2" argument(s): "Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))"
Error Record:
-------------

Message               : Exception calling "Remediate" with "2" argument(s): "Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))"
InnerException        : System.UnauthorizedAccessException: Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
                           at PSADT.LibraryInterfaces.AdvApi32.OpenProcessToken(SafeHandle ProcessHandle, TOKEN_ACCESS_MASK DesiredAccess, SafeFileHandle& TokenHandle) in D:\a\PSAppDeployToolkit\PSAppDeployToolkit\src\PSADT\PSADT\LibraryInterfaces\AdvApi32.cs:line 106
                           at PSADT.ProcessManagement.ProcessToken.GetUserPrimaryToken(RunAsActiveUser runAsActiveUser, Boolean useLinkedAdminToken, Boolean useHighestAvailableToken) in D:\a\PSAppDeployToolkit\PSAppDeployToolkit\src\PSADT\PSADT\ProcessManagement\ProcessToken.cs:line 53
                           at PSADT.Module.AssemblyPermissions.Remediate(RunAsActiveUser runAsActiveUser, IReadOnlyList`1 extraPaths, Boolean useLinkedAdminToken, Boolean useHighestAvailableToken) in D:\a\PSAppDeployToolkit\PSAppDeployToolkit\src\PSADT\PSADT\Module\AssemblyPermissions.cs:line 46
                           at CallSite.Target(Closure , CallSite , Type , Object , FileInfo[] )
                        
FullyQualifiedErrorId : UnauthorizedAccessException,Show-ADTInstallationWelcome
ScriptStackTrace      : at Private:Set-ADTClientServerProcessPermissions, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\PSAppDeployToolkit\PSAppDeployToolkit.psm1: line 2135
                        at Private:Invoke-ADTClientServerOperation, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\PSAppDeployToolkit\PSAppDeployToolkit.psm1: line 1252
                        at Show-ADTWelcomePrompt, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\PSAppDeployToolkit\PSAppDeployToolkit.psm1: line 19478
                        at Show-ADTInstallationWelcome<Process>, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\PSAppDeployToolkit\PSAppDeployToolkit.psm1: line 19790
                        at Install-ADTDeployment, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\Invoke-AppDeployToolkit.ps1: line 146
                        at <ScriptBlock>, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\Invoke-AppDeployToolkit.ps1: line 350
                        at <ScriptBlock>, C:\Windows\AdminArsenal\PDQDeployRunner\service-1\exec\user.ps1: line 1
                        at <ScriptBlock>, <No file>: line 1
                        at <ScriptBlock>, C:\Windows\AdminArsenal\PDQDeployRunner\service-1\exec\Error Handling Wrapper.ps1: line 55
                        at <ScriptBlock>, <No file>: line 1
                        at <ScriptBlock>, <No file>: line 1
                        
PositionMessage       : At \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\Invoke-AppDeployToolkit.ps1:146 char:5
                        +     Show-ADTInstallationWelcome @saiwParams
                        +     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[2025-09-11T08:52:16.5147010-05:00] [Pre-Install] [Invoke-AppDeployToolkit.ps1] [Error] :: An unhandled error within [Invoke-AppDeployToolkit.ps1] has occurred.
Error Record:
-------------

Message               : Exception calling "Remediate" with "2" argument(s): "Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))"
InnerException        : System.UnauthorizedAccessException: Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
                           at PSADT.LibraryInterfaces.AdvApi32.OpenProcessToken(SafeHandle ProcessHandle, TOKEN_ACCESS_MASK DesiredAccess, SafeFileHandle& TokenHandle) in D:\a\PSAppDeployToolkit\PSAppDeployToolkit\src\PSADT\PSADT\LibraryInterfaces\AdvApi32.cs:line 106
                           at PSADT.ProcessManagement.ProcessToken.GetUserPrimaryToken(RunAsActiveUser runAsActiveUser, Boolean useLinkedAdminToken, Boolean useHighestAvailableToken) in D:\a\PSAppDeployToolkit\PSAppDeployToolkit\src\PSADT\PSADT\ProcessManagement\ProcessToken.cs:line 53
                           at PSADT.Module.AssemblyPermissions.Remediate(RunAsActiveUser runAsActiveUser, IReadOnlyList`1 extraPaths, Boolean useLinkedAdminToken, Boolean useHighestAvailableToken) in D:\a\PSAppDeployToolkit\PSAppDeployToolkit\src\PSADT\PSADT\Module\AssemblyPermissions.cs:line 46
                           at CallSite.Target(Closure , CallSite , Type , Object , FileInfo[] )
                        
FullyQualifiedErrorId : UnauthorizedAccessException,Show-ADTInstallationWelcome
ScriptStackTrace      : at Private:Set-ADTClientServerProcessPermissions, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\PSAppDeployToolkit\PSAppDeployToolkit.psm1: line 2135
                        at Private:Invoke-ADTClientServerOperation, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\PSAppDeployToolkit\PSAppDeployToolkit.psm1: line 1252
                        at Show-ADTWelcomePrompt, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\PSAppDeployToolkit\PSAppDeployToolkit.psm1: line 19478
                        at Show-ADTInstallationWelcome<Process>, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\PSAppDeployToolkit\PSAppDeployToolkit.psm1: line 19790
                        at Install-ADTDeployment, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\Invoke-AppDeployToolkit.ps1: line 146
                        at <ScriptBlock>, \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\Invoke-AppDeployToolkit.ps1: line 350
                        at <ScriptBlock>, C:\Windows\AdminArsenal\PDQDeployRunner\service-1\exec\user.ps1: line 1
                        at <ScriptBlock>, <No file>: line 1
                        at <ScriptBlock>, C:\Windows\AdminArsenal\PDQDeployRunner\service-1\exec\Error Handling Wrapper.ps1: line 55
                        at <ScriptBlock>, <No file>: line 1
                        at <ScriptBlock>, <No file>: line 1
                        
PositionMessage       : At \\OURFILESERVER\installs$\HorizonView\Client\8.16.0.32735\PSADT\Omnissa Horizon Client 8.16\Invoke-AppDeployToolkit.ps1:146 char:5
                        +     Show-ADTInstallationWelcome @saiwParams
                        +     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[2025-09-11T08:52:16.6419787-05:00] [Finalization] [Close-ADTSession] [Error] :: [OmnissaHorizonClient8.16] install completed in [34.6571752] seconds with exit code [60001].

Christmas is coming early for you.

Not quite, this looks to require a larger refactor to support grabbing a user's token while running the toolkit under an administrative service account.