Sorry, I misspoke a bit. What I'm referring to is the first major variant of Cassini - Cassini as a Service: Bart De Smet [MVP] - 2004:
www.bartdesmet.net. He correctly uses the Registry for storing param values.
You say: "functionality of registering applications". I assume you mean, in your case, registering the app as a service. This is trivial and easily done as part of the compile process, as you know. Bert's solution provides it.
It is not correct to be using a file (in your case, the XML file) to store param values. That went out when Windows introduced the Registry (I think back in 1995), so as to avoid the kind of problems we are encountering with your product; ie.,
1. Not knowing where values are stored,
2. Not being able to change the values or add new ones.
In the old days, there were .ini files scattered all over hard drives with param values for different products. That's exactly what you are doing with your method of storing data. The idea of the Registry is to avoid that.. The Registry easily accommodates multiple keys such as is required by your product.
Also, it is not Windows-compliant to not allow users to designate the destination for installation programs.
Look at a typical installation when using your product in a customer-based environment: The installation program should be able to launch CassiniExplorerSetup.msi and CassiniServer1Setup.msi into a folder of choice, and should then be able to register a default set of params in the Registry.
It's ridiculous to expect a customer (end-user) to open Cassini and go through the process of entering all these params, particularly when your interface isn't friendly (it doesn't allow browsing to the folders). It's also ridiculous to expect an end-user to know what the default page is.
End-users want to use the application that they purchased. That application may use your Cassini server, but the customer neither needs to know that, nor should have to struggle through entering settings.
And it's not good enough to suggest some kind of command-line solution. That is often not supported by installation programs.
You need to do what Windows expects you to do: use the Registry to store the values.
Regards,
Fred