What you should do is store the file somewhere other than IN the application folders.
The first time a user runs our app, we create a folder under LocalApplicationData with our company name, and copy the file over there that we want to start with. Updates are made to the file in the new location.
When updates come through, we check to see if the folder and file are in LocalApplicationData, and if they are, we don't do anything to it.
In C# you can get the folder this way:
string userFilePath = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData);
In VB there is probably a property for it in the MY namespace.
The other advantage to this is that if the user has a probem and has to uninstall and reinstall, his data is still there.
Note that you do NOT want to display that XML file as a Data file, but just mark it as Required in the Application Files dialog. Files deployed as Data are placed in the ApplicationData folder, not in the same folder as System.Windwos.Forms.StartupPath.
RobinS.
GoldMail.com