Gordon_Atherley
asked on
How to develop two versions of the same code in VB6
Experts, advice please
I have a fairly complex VB6 project in use by clients. I need to have the rolled-out version of the code ready always for bug fixes and minor updates.
For development of and experimenting with new functionality, I want to be able to work on a parallel and wholly independent version of the rolled-out code.
What's the best way to organize the projects so that I can work on, run, and create MSI files for two completely independent versions of the same code, please?
Gordon
I have a fairly complex VB6 project in use by clients. I need to have the rolled-out version of the code ready always for bug fixes and minor updates.
For development of and experimenting with new functionality, I want to be able to work on a parallel and wholly independent version of the rolled-out code.
What's the best way to organize the projects so that I can work on, run, and create MSI files for two completely independent versions of the same code, please?
Gordon
I think that your best bet is to use Visual Source Safe and "pin" your version when you distribute one to client. You can then roll back changes if required (for bug fixes and minor updates).
best would be to create a separate DLL or component for the new functionlaity that u want to add...
reference the functions etc..that create in it when u want to use the new functionality else use the older functions..
reference the functions etc..that create in it when u want to use the new functionality else use the older functions..
I normally maintain versions in different folders on the same drive of my machine.
If it is abc60 running on fields, then I shall be working on abc61.
My folders go like this
abcversions (Mainfolder)
abc5x (child of Mainfolder)
--abc5x_versions.txt
-- abc50 (subfolders)
--abc51
.
.
.
abc6x (child of Mainfolder)
--abc6x_versions.txt
-- abc60
-- abc61
so on
And abc5x_versions.txt contains entire version details of all the subfolders of abc5x
If it is abc60 running on fields, then I shall be working on abc61.
My folders go like this
abcversions (Mainfolder)
abc5x (child of Mainfolder)
--abc5x_versions.txt
-- abc50 (subfolders)
--abc51
.
.
.
abc6x (child of Mainfolder)
--abc6x_versions.txt
-- abc60
-- abc61
so on
And abc5x_versions.txt contains entire version details of all the subfolders of abc5x
I use CVS myself, whenever you want to release a version to the user, trunk the code tree in cvs and give that - enabling you to carry on coding the main branch.
CVS is completely free to use in any environment and if you visit:
www.pushok.com/soft_cvs.php
They have a CVS proxy add-in for VB so you can submit your work to the CVS repository whever you go home at night.
Hope it helps
CVS is completely free to use in any environment and if you visit:
www.pushok.com/soft_cvs.php
They have a CVS proxy add-in for VB so you can submit your work to the CVS repository whever you go home at night.
Hope it helps
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
ASKER
Points to SCDMETA and thanks to all
I have experienced many problems with version conflicts with dependencies. So SCDMETA's solution serves as a warning as well as a solution.
Much appreciated
Gordon
I have experienced many problems with version conflicts with dependencies. So SCDMETA's solution serves as a warning as well as a solution.
Much appreciated
Gordon