August 2007 - Posts
I just got bitten by this one. Turns out you cannot change the folder structure of an application deployed using ClickOnce after it has been deployed. Now all I did was add a new folder, something that is quite common! If I had been renaming existing folders I might be able to understand this but with a new folder containing 1 new XML file? No not really and I think this should be allowed.
Anyway Microsoft acknowledges this as a bug, see http://support.microsoft.com/kb/911792/en-us for more details. I haven’t checked yet but sure hope this is fixed in Visual Studio 2008!
Other than that I think ClickOnce is great for deploying applications. Just make sure you know about Mage.exe and MageUI.exe so you can alter/update the manifests from development to test and to production. More about Mage here http://msmvps.com/blogs/theproblemsolver/archive/2006/04/05/89390.aspx.
Resource files are great for storing strings that need to be translated and Visual Studio makes it real easy to add resource files and edit them. However something that isn’t immediately obvious is how to go about adding a carriage return in a resource string. If you press enter VS just takes you to the next row in the grid. The trick is to use shift enter instead of just enter and you get a new line in the same resource string.
Of course you still need to resize the row to see the whole line but that is easy to, just double click the resize line in the row header (that is the one at the bottom of the row) and VS will auto resize the row so you can read all text.
This morning I spend some time tracking down a ConfigurationErrorsException in an application I am working on. The application ran just fine if I started it but when running unit tests I would receive a ConfigurationErrorsException. Kind of weird as these test ran fine last week. Turns out there was a change in the application settings that where user scoped. And as these settings are stored under the current user they ended up in a somewhat hidden location, in my case “C:\Documents and Settings\Maurice\Local Settings\Application Data\Mutant_Design__support@te”. Now the Mutant_Design__support@te part seems to be part of the excellent TestDriven.Net I was using to run the test. So after I deleted all subdirectories there the test ran just fine again.
This kind of ConfigurationErrorsException error is a bit hard to track down so keep this one in mind as a possible cause and remember that a test framework might use a different directory to store settings then a normal run does.