AnsweredAssumed Answered

Using sys.argv in ptyhon toolbox

Question asked by agomezl on May 13, 2015
Latest reply on May 19, 2015 by agomezl

Hello forum:


We're launching a python toolbox tool "CreaCCAA" from a custom ArcMap menu option "Gestion de Cartografia" as shown in pic1 (see attachments)

The "CreaCCAA" tool has 6 parameters itself.

This operation is working fine



What we're trying to do (see Pic2 in attachments) is to launch "CreaCCAA" from menu "Gestion de Cartografía" with 3 first parameters initialized. We want the final user just to enter parameters 4,5 and 6 in "CreaCCAA"....but it doent work



Code for launching "CreaCCAA" in the "Gestion de Cartografia" .net side, is as follows:


       public static void ExecuteScript(string PathTOToolbox,string ScriptName, List<string> ParametersList)




                IGeoProcessor2 gp = new GeoProcessorClass();

                IVariantArray parameters = null;


                if (ParametersList != null)


                    parameters = new VarArrayClass();

                    foreach (string param in ParametersList)





                gp.Execute(ScriptName, parameters, null);


            catch (Exception Err)


                Connector.ConnectorExtension.WriteStaticLog("Error", Err.Message + " - " + Err.StackTrace);






In the "CreaCCAA" python code side, we're trying to read the 3 arguments using sys.argv but it doesn't work.

Exploring the sys.argv value we get always an empty string ['']

It makes no difference to read sys.argv in any section in the python toolbox code (__init__, getParameterInfo, updateParameters or execute): we get always the empty string ['']


Does anybody know how to solve this? Does sys.argv work "fine" in a pyhon toolbox?


We think one possible way to solve this, could be reading the 3 parameters needed in "CreaCCAA" from a text file (like cookies work) using the  "open" and "readlines" python methods.

But, because of security issues (one of the parameters to pass to "CreaCCAA" is a password) we prefer to avoid it.


Our development environment is ArcGIS 10.2.2 on Windows 7 Professional SP1



Hope you could help with this and thanks in advance