SCCM uses 32-bit cmd to install any application (this can be verified by checking task manager you will find cmd*32), which is equivalent to c:\windows\syswow64\cmd.exe.

Verify by looking task manager, processes, you will be able to see: cmd.exe*32

Every application even if we are using psexec executes in 64-bit command prompt, this can be verified through task manager as cmd.exe

On one case we have to specifically run the application in 64-bit cmd which wasn’t looking possible even specifying various cmd switches in command line such as “c:\windows\system32\cmd.exe” or “c:\windows\syswow64\cmd.exe”, in both the scenarios it is executing cmd.exe*32 only as SCCM client is 32-bit, whatsoever command you use, OS will automatically redirect it to 32-bit version irrespective of path used.

But here is a way to prevent redirect of path and i.e. through using mklink:

Command to be used is mklink cmdin64.exe “c:\windows\system32\cmd.exe”

Now you can you following command lines (for example only):

mklink cmdin64.exe "c:\Windows\System32\cmd.exe"

cmdin64.exe /c "gacutil.exe" /u SPSI

cmdin64.exe /c "gacutil.exe" /i SPSI.dll