Quote:
Thanks guys, but still none the clearer really!
That's because you've assumed that there's a definitive Right Answer to your question. There isn't. It's horses for courses.
Quote:
PCB design software - hence my questions about speed!
As I understand it, there are at least two performance hotspots in PCB design software: the graphics and the auto-layout stuff.
For those, my gut feeling is that you'll want to use C++, because it compiles to native code. It might not hurt to try some of that in C#, though. The performance is pretty good, but -- because it does lots of stuff for you under the hood -- there are performance pitfalls that you might not be expecting.
If you want to start using C# -- and you've not said why C/C++ is no longer suitable for what you're doing -- you can have both unmanaged C++ and C# in the same application, which means that you can get the productivity of using C#, and still use C++ for the performance-critical bits.
Quote:
COM is a nasty mess in C (or C++) especially when dealing with variants
In C, I agree with you. In C++, most of the nastiness goes away if you use #import, or if you use <comdef.h>
Quote:
hide some COM horrors for msxml.
Ah, well, the MSXML API is a little baroque. System.Xml in .NET is cleaner, but not spectacularly so.
_________________________
--
roger