Q:

App.Config Ignored After Pre-Build Event

I have a solution with several projects and several developers, each with their own environment (of course).  To manage connection strings between each environment, I have created several app.config files for each environment: app.config.dev, app.config.qa, etc.
The pre-build event simply copies the app.config.$(ConfigurationName) to app.config.  This pre-build event is done for each project in the solution, and the connection string is included in each (including the test project).
When I use the pre-build events to manage the app.config files, the connection string cannot be found.  I can get the tests to run fine by 2 methods: 1. Do not use the pre-build events to manage the app.config file selection, and do it myself or 2. If I check out app.config and make it writable, then the pre-build events work just fine.
We are using Visual Studio 2008 with VSS.
I'm down to my last grey hair here, any ideas?
Thanks in advance!
SOLUTION
Update the pre-build event to ensure the app.config file is writable even if it is checked in.  Pre-Build event used below:
@echo off 
attrib -r $(ProjectDir)app.config
if errorlevel 1 goto AttribFailed 
copy $(ProjectDir)app.config.$(ConfigurationName) $(ProjectDir)app.config
goto BuildOK
:AttribFailed
echo Attrib -r Failed on $(ProjectDir)app.config
exit 1
:BuildOK
echo Copy Done

A:

It sounds like your app.config shouldn't be under source control - just the build-configuration-specific configuration files (app.config.dev, app.config.qa, etc.).
Having said that, you can make checked-in files writable under VSS. For example, through windows explorer, uncheck the file's "Read-only" attribute. (You'll have to do this each time you check it in.)

