I suspect VB6 apps will have limited life, because Redmond has to keep its coders busy pulling the rug out from under everybody.
If you think re-writing your apps in .NET will guarantee their immortality, just remember DDE, OLE, COM, DAO, etc. etc.
If an app works there is no GOOD reason it should stop working without somebody finding the resources to re-write it every few years, but sadly there are plenty of reasons.