Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Windows API and .net languages

People always advised me that if I am doing some application that should use some Windows APIs to do any process level job, I must use VC++ and not any other .net language.

Is there any truth in that?

Can everything that can be done using VC++ be done in other .net languages also?

Are all the .net languages the same when their capabilities are compared?

like image 347
Niyaz Avatar asked Dec 08 '22 08:12

Niyaz


1 Answers

If you need to work with native code fairly intimately, C++ is likely to make life easier. However, there's nothing inherently wrong with using P/Invoke to call into the Win32 API from C#, VB.NET, F# etc.

Not all .NET languages are the same in terms of capabilities, although C# and VB.NET are largely equivalent in functionality. I know there are some things which C++/CLI exposes which aren't exposed by C# or VB.NET - I don't know if the reverse is true. (I've no idea what C++/CLI is like for lambda expressions, extension methods etc.)

like image 61
Jon Skeet Avatar answered Dec 24 '22 17:12

Jon Skeet