We are about to start a new project using an existing SQL DB, but this project is going to need to reuse a number of core features from an existing vb6 app that uses the same database.
The approach I would like to try:
Have the existing vb6 application be the entry point, but immediately call a .net class to present the main screen and menu. If the user needs to use a feature/form that is in vb6 then raise an event to vb6 to load that form and hide the .net side of it until it's done.
Opposite of the above, create a .net exe to be the entry point and call a vb6 dll whenever I need a vb6 feature/form.
Because of initialization that goes on in the vb6 app that makes various features usable, it would be much less painful for me to try the first approach. Moreover, there is some functionality that is very tightly coupled to the forms in the vb6 app and is vital to the application, but I will not be able to immediately port it to .net in the first phase.
I realize this is not the ideal approach but unfortunately there are real world concerns that make taking the idealistic approach near (if not entirely) impossible.
So my question is: are any specific pitfalls I should be aware of in doing this?