I am shipping my product X version 1. It is installed in folder "%program files%\X V1". It has a sub folder /addins where users will put addins to my product written by the community.
Fast forward to V2. What shou开发者_StackOverflow社区ld be the deployment strategy?
- Create a folder "%program files%\X V2" and manually copy all addins from V1 to it.
- Always use a version-less folder name "%program files%\X" to avoid messaing with the addins.
IMO the only reason to include the version number in the product folder is if the customer wants to have both versions of a product installed at the same time, e.g. Microsoft Studio 8 (2005) and Microsoft Studio 9 (2008). If you look in the Program Files directory you will note that most companies do not include the version number in their folder name.
I recommend you for downwards compability not to use the version number in you folder structure. As Jouke van der Maas already said, it would be possibly sensefull to migrate your addins folder to '%user%/My Documents' or '%user%/App Data/Roaming'. Otherwise you will possibly get confused user requests, when the new version comes up.
You should use a separate folder for plugins:
- /Program Files/AppX V1/
- /Program Files/AppX V2/
- /Program Files/AppX Plugins/
What about a company/appgroup folder (see MS Office)?
- /Program Files/MyCompany/AppX V1/
- /Program Files/MyCompany/AppX V2/
- /Program Files/MyCompany/AppX Plugins/
- /Program Files/MyCompany/MyCXY Framework V1/
Also, you can take a trip into your Program Files folder to see how others do. (Sorry, I can't. I have no such folder for a while.)
In most cases there is no reason to include version number in the folder name. Even if the customer wants to install both versions, then he should give another folder name himself. Only valid reason I can think of is if installing new version in the same folder could potentially cause technical problems and there is no other way around the problem.
And even if you decide to create separate folder for each version, I would use folder structure like this:
- %program files%\X\V1
- %program files%\X\V2
- %program files%\X\addins
精彩评论