Link to home
Start Free TrialLog in
Avatar of watsocd
watsocd

asked on

C++ v6 Visual Studio and Visio Studio .NET compatibility

I have an application to program in C++.  The application documentation calls for v6 of Visual Studio.

Can I use the latest version of .NET Visual Studio?  ( http://msdn.microsoft.com/vstudio/se/ )

Will there be any compatibility issues? I must use precompiled DLLs from the vendor.

Is there a v6 mode in .NET Visual Studio?

Any other issues to watch out for?

Thanks for the help.

Chuck W
ASKER CERTIFIED SOLUTION
Avatar of Axter
Axter
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of wayside
wayside

VC 6.0 and VC.Net use different versions of the runtime libraries. Mixing these within the same program could lead to problems. For example, if the dll creates something using (vc 6.0) new and your program deletes it using (vc.net) delete, this willl probably cause a crash.

I don't remember if the name mangling changed from vc 6.0 to vc.net, but if it did, and the dll's export mangled names, you won't be able to link.

The default settings vor VC 7 (.NET 2003) flag code that would be a problem using a 64 bit processor, typically assumptions that a pointer is the same length as an int. This generates a lot of warnings from certain kinds of code. While these warnings are meaningful, they don't stop your 32-bit code from working.

You have to tell VC7 not to produce managed code, as this is the default.

The problems dll compatibility problems mentioned by wayside are real, but they are only a potential problem, not one that occurs frequently or always. It's worth trying, but keep this problem in the back of your head if you get an intractible bug.