PDA

View Full Version : Having a heck of a time with Path Variables



slomicka
09-27-2010, 08:23 AM
I am having a heck of a time with Path Variables. I understand the concept and the "Standard" type of variable works. I can't get the "Environment" or "Registry" type to work no matter what I try. I have read the help section and followed the instructions. I put a logical name in the "Name" column in the Path Variables view. I put either a registry key or environment name in the "Defined Value" and changed the “Type” droplist accordingly. What I would expect is that the defined value show up in the "Current Value" column. No matter what I tried I could not get the defined values to show. Yes the registry key was defined and global environment variable was set. What am I missing?

slomicka
09-28-2010, 08:08 AM
1) Create a system environmental variable called TESTVAR and give it a value of taco.
2) Start IS.
3) Create a new environmental Path Variable. Use TEST in the name, TESTVAR as the defined value. On my system Current Value becomes "<TEST>". Clicking refresh has no effect.
4) Start a CMD prompt. Type set. Notice that the environmental variable TESTVAR’s value is taco.
4) Reboot
5) Start IS.
6) Revisit the Path Variable TESTVAR and voila the current value is now taco.
7) Reset environmental variable TESTVAR to bob.
8) Start a CMD prompt. Type set. Notice that the environmental variable TESTVAR’s value is bob.
9) Start IS.
10) Revisit Path Variables. Click refresh. Current Value for TESTVAR remains taco no matter what.
Environment is Windows 7/64 bit.

Please help. Need this or Registry Paths to work if I am to get builds to work on TFS 2010.

esiemiat
09-28-2010, 09:30 AM
We use environment variables for path variables all the time here. However, we do not set them at the system level. Instead we created a small app that helps us manage our install projects. This EXE sets certain environment variables and then opens the ISM project in InstallShield. InstallShield in turn inherits the environment variables set from within the app.

In your case it would be easier to create a CMD script that does the same thing. First the script would set your environment variables the way you want them, then it would open the project in InstallShield.

BTW, this method has the added benefit of allowing simultaneously develope for different product environments on the same machine.

slomicka
09-28-2010, 09:37 AM
So the variables you set are scoped to the current process and current user? Do you use TFS2010? I shyed away from user/process scoped variables because we are going to eventually going to run our builds on a TFS server and there may be more than one process involved on the server. Not real clear of all of the processes involved on the TFS server - yet.

esiemiat
09-28-2010, 09:40 AM
Yes, the variables are scoped to the current process. But that hasn't caused problems with our build process. We simply set the same variables in the scripts used at build time. I am not familiar with TFS builds yet, but I would imagine you could do something similiar there as well.

slomicka
09-28-2010, 02:07 PM
Thanks again and we shall see how this is going to work in TFS.

Steve

CodeGuru
11-23-2010, 12:06 AM
Steve, have you had any success?

We're also having major issues integrating Installshield 2011 into TFS 2010.

slomicka
12-07-2010, 11:23 AM
but the solution is non-trivial. I will be happy to detail how i solved the problem if you are still out there...