C++ & .NET

If you create a simple C++ program with a GUI interface using the Windows Forms (CLR) instead of MFC, will it require .NET to be installed on each computer in order for it to be able to run? The reason I ask is I would like to get into developing windows Apps using CLR, but I'd be developing software for client computers, and requiring them all to make sure .NET 2.0 is installed in order to use the software wouldn't be feasible. When must a desktop have .NET installed and when can they get away with out it?

Thanks for your help!
Dan
LVL 3
dancablamAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

jkrCommented:
>>If you create a simple C++ program with a GUI interface using the Windows Forms (CLR) instead of MFC, will it
>>require .NET to be installed on each computer in order for it to be able to run?

Yes, the .NET runtime environment is definitely required.

>>When must a desktop have .NET installed and when can they get away with out it?

Whenever you want to run managed code. There's no way to get around that, just as you cannot run Java programs without a JVM installed.
0
jkrCommented:
BTW, you can get everything you need from http://msdn.microsoft.com/netframework/downloads/updates/default.aspx ("SDKs, Redistributables & Service Packs")
0
dancablamAuthor Commented:
Crap, that's what I was afraid of.

So what would be the best approach for developing software for home and small business users who aren't particularily technically inclined enough to understand how to install .NET? Stick with MFC? VB? Other? What are the pros doing these days?

Dan
0
Cloud Class® Course: Python 3 Fundamentals

This course will teach participants about installing and configuring Python, syntax, importing, statements, types, strings, booleans, files, lists, tuples, comprehensions, functions, and classes.

jkrCommented:
It shouldn't be too hard to integrate the .NET installers you can download from the MSDN page I linked above into your own setup routine. Even when you develop and ship a product using VC++ and 'native' C++ code, you'll have to ensure that the necessary runtime DLLs are installed, so that does not make a big difference (apart from the sheer size of the packages). Not to speak of MFC or VB.

On the other hand, I don't see too many advantages these days that would make me use managed C++ at all if I can avoid it.
0
dancablamAuthor Commented:
So with .NET my 1MB program would have to lug around the 25MB .NET installater with it for those without .NET installed?

My final question:
(I'm getting this outsourced because I only know ANSI C++) All things being equal - if you were to create a windows software app for home users, what language would you most likely use?
0
jkrCommented:
>>So with .NET my 1MB program would have to lug around the 25MB .NET installater with it for those without
>>.NET installed?

Yup, that's the deal. That does not really matter if you ship on a CD, but can be a pain if you need to download it and don't have broadband.

>>if you were to create a windows software app for home users, what language would you most likely use?

Me, personally? C++, unmanaged ;o)

If it only is about a simple GUI, probably even without any libraries, plain Win32 APIs. If things get more complex GUI-wise, I'd probably go for either MFC or wxWidgets (www.wxwidgets.org).
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
dancablamAuthor Commented:
Thanks a million!!!!
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Microsoft Development

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.