run psapps directly from a sccm DP (no download in client cach)

hello,
I’m trying to run the toolkit directly from a SCCM 2012 distribution point without downloading the package to the client cache.
When run, the advertisment starts but then nothing happens, I can see an Deploy-Application.exe process in the task manager on the computer, but there is no logs created or anything, it just sits here untill the timeout occur.

If I run the Deploy-application directly from the server by opening the SCCM share it does works
If I create an new sccm program (same package) bypass the deploy-application.exe and just run the program under \files directly (still from the DP, no download in the sccm cache) it also works
If I configure the advertisement to not run from the DP and putting in the sccm client cache it works.

I’ve tried pretty much anything in the “program” property of the sccm package (run with admin rights, tick or not the “allow users to interact with this program”) but what set me off is that it appears to start but no logs or anything are created.

psappdeploy script version is 3.6.8.

At this point I’m a little lost and I don’t know what to do next, any suggestion or idea would be appreciated, thanks

Sounds to like an issue with the powershell exeution policy.

What’s your powershell execution policy on the target device? Check by running get-executionpolicy in a console. If running RemoteSigned (which is recommended), you will have to consider signing your scripts and/or set the CM Client to bypass the execution policy in your Client Settings (Administration \ Client Settings \ <open the properties of your client settings> \ Computer Agent \ PowerShell execution policy).

Also I believe the CM client sets up a temporary (hidden) mapped network drive when doing the approach you’re trying out. Could it perhaps be permissions on the share? All your CM client devices should have at least read & execute on the NTFS permissions on the share. I’ve never had to utilize this approach though so don’t take my advice for granted.

Glad to here I’m not the only one struggling with this.

http://psappdeploytoolkit.com/forums/topic/deploy-application-exe-not-working-right-when-running-as-a-package-from-dp/#post-1136

I’m trying the client settings change to see if that resolves it.
Thanks

hi thanks for your answers, I guess it’s somehow an access or rights access but I’m unable to find exactly what the problem is.
I’ve tried to add the share to the intranet list zone as per https://blogs.technet.microsoft.com/heyscriptingguy/2012/10/29/how-to-run-powershell-scripts-from-a-shared-directory/

then I did the following:

log on local admin, open network share with my domain account (modify rights) psappdeploy.exe won’t start
error (warning) in powershell log (Sorry it’s in french but should be easy enough to understand)

Message d’erreur = Impossible de convertir la valeur « » en type « System.Boolean ». Les paramètres booléens acceptent seulement des valeurs booléennes et des nombres, tels que $True, $False, 1 ou 0.
ID d’erreur pleinement qualifiée = RuntimeException,AppDeployToolkitMain.ps1

Contexte :
Gravité = Warning
Nom d’hôte = ConsoleHost
Version de l’hôte = 4.0
ID d’hôte = da06ed12-2e0c-4590-b457-67aae3bc400b
Version du moteur = 4.0
ID d’instance d’exécution = abecca60-3828-4ce8-b5a7-b0a5f76c75fa
ID de pipeline = 1
Nom de commande = AppDeployToolkitMain.ps1
Type de commande = ExternalScript
Nom du script = \aaa-serveur.ccc.ddd.edu.on.ca\S$\SMSPKGS$\P0100154\Deploy-Application.ps1
Chemin de la commande = \aaa-serveur.ccc.ddd.edu.on.ca\S$\SMSPKGS$\P0100154\AppDeployToolkit\AppDeployToolkitMain.ps1
Numéro de séquence = 18
Utilisateur = cpmputer-NAme\Administrateur
ID d’interpréteur de commandes = Microsoft.PowerShell

then I’ve tried to
log on with this previous domain account, open network share, start psappdeploy , then it runs correctly from the DP

the execution policy for his machine were set to “undefined” for all the scopes
and are set to “bypass” for the configmgr clients
when running from SCCM it will run under the context system, so maybe that’s the issue.
May be worth it to try to run the program as the logged on user instead of admin rights, but that won’t be usefull in my case.

I’m open to any other ideas, thanks!

Hi,

Sorry for my bad english

I have same problem (GPO put powershell restrictions to RemoteSigned) and I solve it with a command file taht create link. Cmd file has been add in SCCM package, in folder that content Deploy-application.exe
In SCCM program command line, I launch
InstallFromDP.cmd Deploy-Application.exe -DeploymentType “Install” -DeployMode “Silent”

Command file InstallFromDP.cmd is :
REM ==============================
REM
REM InstallFromDP.cmd
REM
REM Date : 2016/11/30
REM Author : Eric CHAIGNE
REM
REM Use this command line if you want launch your installation from DP.
REM Do not use it for installation that need CCMCache
REM
REM Command Line to use in the package :
REM InstallFromDP.cmd installer param1, param2…
REM InstallFromDP.cmd Deploy-Application.exe -DeploymentType “Install” -DeployMode “Silent”
REM
REM ==============================

@Echo Off
Set Installer=
Set Param1=
Set Param2=
Set Param3=
Set Param4=
Set Param5=
Set Param6=
Set Param7=
Set Param8=

IF “%1” NEQ “” Set Installer=%1
IF “%2” NEQ “” Set Param1=%2
IF “%3” NEQ “” Set Param2=%3
IF “%4” NEQ “” Set Param3=%4
IF “%5” NEQ “” Set Param4=%5
IF “%6” NEQ “” Set Param5=%6
IF “%7” NEQ “” Set Param6=%7
IF “%8” NEQ “” Set Param7=%8
IF “%9” NEQ “” Set Param8=%9

If “%Installer%” NEQ “” (
MKLINK /D C:\InstallFromDP %~DP0
“C:\InstallFromDP%installer%” %Param1% %Param2% %Param3% %Param4% %Param5% %Param6% %Param7% %Param8%
RD C:\InstallFromDP
) ELSE (
Echo need parameters
)

Eric, have you tried browsing to the share in the context of the system account? You can do so by following the steps below:

  1. Download PSExec.exe (https://technet.microsoft.com/en-us/sysinternals/pxexec.aspx?f=255&MSPPError=-2147217396)
  2. Open Command Prompt (cmd.exe) as administrator
  3. Navigate to the location of your PSExec.exe and type in psexec.exe -s -i powershell
    (3.5. In the powershell console windows, type in $env:username or whoami to ensure that the process is running the process in system context)
  4. In the powershell console window, navigate to the UNC share of you package and verify access

Following those steps will tell you if the machine (NT Authority\SYSTEM) has access to the share and will clear out any permissions related question.

Cheers