8.5. PickMeApp Command Line Interface

 

You can work with the PickMeApp using command line.  PickMeApp supports the following convention

 

General Conventions

  • All parameters in <> are mandatory parameters . we need to specific them.
  • All parameters in [ ] are optional parameters . it's possible to ignore them.
  • Path with  space should be in   "   "
  • Alll CLI commands should include email and password in form /a <PMA Id>.<email> to indicate license information.
  • Most of actions switches are one letter + one letter for transformation of action ( e.g /i +d = /id  - start install but download only )
  • Customization are started from switch  /c+ letter per customization settings ( /c+b+m = /cbm )
  • Add /log with the path to log file to print logs of each  CLI command.
  • PickMeApp Pro setup includes PickMeAppPro.bat - which is preferable way to use PickMeApp CLI as it prints status messages in CMD.
  • All actions  except listing installed applications require Product ID ( e.g {85F4CBCB-9BBC-4B50-A7D8-E1106771498D} ) . The Product ID can be obtained by listing installed application command

 

List installed applications  /l  switch

 

   PickMeAppPro.bat /a <PMA Id>.<Email> /l /c([n][q][a][s][f]) [/suite <external suite path> ] [/appname <Name>] [/apppublisher <publisher>] [/thresholdname <threshold value>] [/thresholdpublisher <threshold value>] [/pkgs <package folder>] [/log <path to the log file>]
        
/c - specifies customization flag for List                            
 [n] - Non Qualified Applications                        
 [q] - Qualified Applications                        
 [a] - all installed Applications                        
 [s] - Suites                        
 [f] - Filter/Search installed apps    fuzzy match based on thresholds by following attributes:
        /appname -  Indicate the name of installed application. (above the  threshold).                   
        /thresholdname - Threshold for application name                    
        /apppublisher - Indicate the name of Publisher of installed application (above the  threshold).                   
        /thresholdpublisher - Threshold for Publisher name

/suite -  Indicate external suite ini file                            
/log - Indicate log file output                           
/pkgs <package folder> - Indicate package folder, you have to specific a folder that is keeping packages such as xml, tap, pad, exe, msi.

 

if /pkgs switch is used the output is cvs file with information about of packages located in the folder

The output of List installed Application command is csv file with information about installed applications specified by filters

                     
Example: List all installed apps . and log is put to c:\                            
                           
PickMeAppPro.bat -a fdb234514182afdead32ad5hhhahah380d.test@gmail.com /l /ca /suite c:\suite.ini /log c:\log.txt                            

 

 

Capture installed applications  /g  switch

PickMeAppPro.bat /a <PMA Id>.<Email> /g[p] [/c([f][r][h])] <Product ID> /out <Output Folder> [/suite <external suite path> ] [/log <path to the log file>]       

[p] - Packing the grabbed image to exe  installation file
/c - specifies customization flag for grab                            
   [f] - processes file settings                        
   [r] - processes registry settings                        
   [h] - Indicate that the capturing will be not included MSI Caches                        
/out - Indicate output folder                            
/suite -  Indicate external suite ini file                            
/log - Indicate log file output                            
                            
Example:                             
                            
PickMeAppPro.bat -a da806f519766f914d333d5d0abd16b93.testemail@gmail.com /gp /ch {23170F69-40C1-2702-1900-000001000000} /out c:\test /log c:\test\log.log                              
        
        

Uninstall applications     /u  switch

 

PickMeAppPro.bat /a <PMA Id>.<Email> /u [/c([b][m])] <Product ID> [/suite <external suite path> ] [/log <path to the log file>]                            
                            
/c - specifies customization flag for uninstsall                            
    [b] - indicate to turn-on creating system restore                        
    [m] - indicate to turn-on Guess mode                        
/suite -  Indicate external suite ini file                            
/log - Indicate log file output                            
                            
 Example
PickMeAppPro.bat -a da806f519766f914d333d5d0abd16b93.testemail@gmail.com /u {23170F69-40C1-2702-1900-000001000000} /log c:\test\log.log                            

 

        
        

Install   package   /i   switch

PickMeAppPro.bat /a <PMA Id>.<Email> /i[d] [/c([f][r][k][l][b][m])]  <Package> [/downloadpath <path to download folder>] [/log <path to the log file>]                                                                  
                           
[d] - Indicate downloading only. Do not perform installing.                            
/c - specifies customization flag for grab                            
    [f] - processes file settings                        
    [r] - processes registry settings                        
    [k] - Indicate that the downloaded package will be stored in local machine                        
    [l] - Indicate that the downloading package from local machine (If not parameter, downloading order is WEB)                        
    [b] - indicate to turn-on creating system restore                        
    [m] - indicate to turn-on Guess mode  

/downloadpath  -  Indicate folder to be used to store any downloaded file. (default is current working folder) . the download folder is used to stored any downloaded files when installing via pad/xml file. This folder is similar to working folder and required for the install action when pad/xmal packages are installed                         
/out - Indicate output folder                            
/suite -  Indicate external suite ini file                            
/log - Indicate log file output                            

 

Example                             
PickMeAppPro.bat -a da806f519766f914d333d5d0abd16b93.testemail@gmail.com /id /ck C:\Pad_Test\KeePass_pad.tad /downloadpath C:\Pad_Test /log c:\test\log.log

 

                            

Relocate Installed Application      /r  switch

PickMeAppPro.bat /a <PMA Id>.<Email> /r <Product ID> <Relocated drive> [/suite <external suite path> ] [/log <path to the log file>]                            
                            
<Product ID>: Indicate a moving product                            
<Relocated drive>: Destination drive
/suite -  Indicate external suite ini file                            
/log - Indicate log file output                            
                            
Example:

Relocate "Orca" to drive E                            
                            
PickMeAppPro.bat -a da806f519766f914d333d5d0abd16b93.testemail@gmail.com /r {85F4CBCB-9BBC-4B50-A7D8-E1106771498D} e:                            

 

Remain relocated application  /m  switch

PickMeAppPro.bat /a <PMA Id>.<Email> /m <Product ID> [/suite <external suite path> ] [/log <path to the log file>]                            
                            
<Product ID>: Indicate a moving product                            
<Relocated drive>: Destination drive
/suite -  Indicate external suite ini file                            
/log - Indicate log file output                            
                            
Example:                          
                            
Remain "Orca"                            
                            
PickMeAppPro.bat -a da806f519766f914d333d5d0abd16b93.testemail@gmail  /m {85F4CBCB-9BBC-4B50-A7D8-E1106771498D}                            

 

Pack ( Save as Exe)   /p  switch

PickMeAppPro.bat /a <PMA Id>.<email> /p <Destination> [/n <outputName>] <Package 1> [ <Package 2> <Package 3> ... ]                            
                            
<Destination>: output folder and the Packing log will be stored in here.                            
[/n <outputName>]: output file name (if not input output name, The name of first package will be used)                            
<Package 1>:   tap/pad file 1                            
<Package 2>:   tap/pad file 2                            
                            
Example:

Packing 7-Zip tap and KeepPass pad file                            
                            
PickMeAppPro.bat -a da806f519766f914d333d5d0abd16b93.testemail@gmail /p c:\test /n testApp c:\test\7-Zip.tap c:\test\KeePass_pad.xml