I recently cleaned out my collection of MSDN CD's and DVD's. I came across a DVD containing Visual Studio 6.0 Enterprise Edition and VS 6 Service Pack 3. I also found the October 2001 MSDN DVD. I decided to keep these discs, even though I have not worked on any projects with this type of legacy code. Amazingly, just a few weeks later, I was knee deep in a C++/COM/VB6 project.
You can smile and think to yourself that the code and projects should be upgraded. However, .Net is not an option in the environment where the program must execute. The other problem is, there is not money, time or inclination to port the project to a native C++ application. The only viable and expedient option is to use ten year old development tools and documentation to mod the project, code and executable.
Which brings me back to the importance of retaining old knowledge. Moving to .Net has helped accelerate the loss of old knowledge and techniques that are useful in VB6. With .Net wrapping most of the Windows API, database access and internet transmission are now hidden from the developer, with little incentive to learn the underlying code that makes the .Net class "work."
If you've grown up in a .Net environment, you haven't had the chance to learn VB6, and VC++ 6.0. And now comes the punch line. You've got two weeks to learn the code and mod the application(s) to meet new requirements. So keep that ancient, ten year old MSDN DVD, retain that twelve year old Visual Studio 6.0 DVD or CD set. It may come in handy. (You might also think about archiving the old VB6 books that you thought you might need. I threw a couple away two years ago, and now I wish I had kept them.)