Four Js Development Tools Forum

Discussions by product => GDC => Topic started by: Brad D. on May 12, 2020, 05:28:41 pm



Title: GDC (at least 3.10 and 3.20) does not resolve Windows environment variables
Post by: Brad D. on May 12, 2020, 05:28:41 pm
When using GDC files either inside the GDC or running them from the command line,if the GDC file contains a Windows environment varibale, it is not resolved by the GDC before using the file.  This is a major inconvenience in a multi application environment where things such as images or custom login boxes are located through the use of environment variables.  This should be a high priority modification request as it is something that most if not all Windows applications already respect and would make the use of the GDC much simpler and much more flexible.


Title: Re: GDC (at least 3.10 and 3.20) does not resolve Windows environment variables
Post by: Reuben B. on May 12, 2020, 11:46:54 pm
Hi Brad,

If there is a clear and obvious difference in behaviour between versions and it is not noted in Upgrade Guides (http://4js.com/online_documentation/fjs-gdc-manual-html/#gdc-topics/c_gdc_upgrade_guides.html) , then you should have no hesitation in raising a support call with your local support contact and giving them a MCVE (https://stackoverflow.com/help/minimal-reproducible-example) that allows them to reproduce the issue. 

Reuben


Title: Re: GDC (at least 3.10 and 3.20) does not resolve Windows environment variables
Post by: Brad D. on May 13, 2020, 05:02:05 pm
Hi Reuben:

As far as I know, this has never worked in any GDC release.  I have only tested it in 3.10.23 and 3.20.10.  This is very easy to reproduce:

1. Create a custom login UI
2. Create a GDC session that uses the custom login box referring to it location using an environment variable
3. Start the GDC session using the GDC definition within the GDC itself or from a command line after having exported the GDC session file definition.
4. Replace the environment variable within the GDC file and put in full path to login ui and test again.

You will notice that in step 3 you will get the default login ui while in step 4 you will get the custom one.


Title: Re: GDC (at least 3.10 and 3.20) does not resolve Windows environment variables
Post by: Reuben B. on May 14, 2020, 01:48:19 am
A quick search of the Issue Tracker (searching on product="GDC" and keywords = "shortcut environment variable") https://4js.com/support/issue/?product=GDC&stat=CLOSED&fixed_in=&words=shortcut+environment+variable&Search=Search#toggle-id-1 reveals that something works in this area.

I also discovered ...

http://4js.com/online_documentation/fjs-gdc-manual-html/#gdc-topics/c_gdc_ShWizard_shortcuts_and_environment_variables.html

... which again suggest environment variables are resolved, however the list of variables it is applied too is interesting and probably points to where the actual issue is.

You are referring to the customLoginFile variable which is not in that list.  The entries on the list are on  the remote server, not local like customLoginFile and iconFilePath

It probably makes sense that the local file reference variables should also expand local environment variables.  I suspect that others in same predicament have used mapped drives and only had one instance of icon / custom login box files rather than distributing onto every PC e.g. X:\my_custom_login.ui

I see a support case has been created so I will let that take its course.  Could I ask that as part of that you submit a screenshot of what you were doing in step 2, I couldn't get that to accept a value that used an environment variable.

Thanks,

Reuben








Title: Re: GDC (at least 3.10 and 3.20) does not resolve Windows environment variables
Post by: Brad D. on June 10, 2020, 07:10:08 pm
Hi Reuben:

Sorry I have been tied up and have not had a chance to get back to this case.

I tried as well from within the GDC to use an environment variable in the specification of the path to the icon to use but the GDC would not allow it.  I think this is further proof that the GDC is not resolving environment variables.  If it was, the path I entered would have been accepted as it is valid.

The case you listed has to do with the GDC editing the values within a shortcut definition within the GDC.  I have not seen this behaviour and the GDC does not replace environment variables but just does not seem to resolve them.

Fore the second reference, I use the environment variable within a field and not for the entire field.  I don't know if that makes a difference.