CREvans
04-04-2008, 10:26 AM
I have implemented a system where a Visual Build script can auto-refresh itself if the script on disk has a different time/date stamp than the running script. This is working fine. However, despite my best efforts otherwise, I'm still sometimes getting an error in the implementation.
As background, my build script is called from the command line via the /b option to autostart and exit when done. All parts of the script are in a wrapper group which loops continually as long as an exit macro is not present (which is set if a build script update is needed).
If a change is identified, I go to a section of script which sets the exit macro, saves off the build script to a temporary (junk) file (so it doesn't ask if I want to save the modified build script, in case the script was paused or changed by a user on the machine), and then calls the updated script.
The current script should then exit and the new one start. The new one starts fine, but the old one will sometimes not exit cleanly, but instead pop up a message saying that it can't save configuration values to VisBuildPro.cfg because it's being used by another process. I can only assume that it's the newly launched script which is trying to read from such a file while the old script is still exiting.
However, I can't find this file on disk anywhere, so it must be a temporary file that's only present for a very short time. Does anyone have a suggestion on how to fix this file contention issue for this VisBuildPro.cfg temporary file?
As background, my build script is called from the command line via the /b option to autostart and exit when done. All parts of the script are in a wrapper group which loops continually as long as an exit macro is not present (which is set if a build script update is needed).
If a change is identified, I go to a section of script which sets the exit macro, saves off the build script to a temporary (junk) file (so it doesn't ask if I want to save the modified build script, in case the script was paused or changed by a user on the machine), and then calls the updated script.
The current script should then exit and the new one start. The new one starts fine, but the old one will sometimes not exit cleanly, but instead pop up a message saying that it can't save configuration values to VisBuildPro.cfg because it's being used by another process. I can only assume that it's the newly launched script which is trying to read from such a file while the old script is still exiting.
However, I can't find this file on disk anywhere, so it must be a temporary file that's only present for a very short time. Does anyone have a suggestion on how to fix this file contention issue for this VisBuildPro.cfg temporary file?