Normally a deployment exit code is returned by the installer package. However, in the case of exit code 2 it could be that there is an issue with the actual command line syntax or an issue with psexec executing on that computer. I would suggest as…
Step 1, make sure the .msi package itself is not corrupt. Make sure it can install successfully when run manually without using BatchPatch.
Step 2, make sure that BatchPatch is able to successfully execute ‘Check for available updates’ on that computer. If this works, then we know that psexec is working properly.
Step 3, assuming psexec is working properly, then probably your deployment configuration is problematic. I would need to see the deployment configuration in order to tell you if there is something obviously wrong with it. You can use the link that dorianborovina posted above to see examples of how to deploy .msi files with BatchPatch. If you continue to have problems then maybe you can post a screenshot of your deployment configuration. This forum does not allow images, but you could post it to something like imgur.com and then provide a link here.
-Doug