Can a VB.NET application run without the .NET framework?


 I am interested in running a VB.NET application on a touch screen computing device that runs Windows XP. I am new to this, so what I am wondering is how I can make a stand-alone application that runs without the .NET framework installed. I want the app to run as an executable without the framework.

 I am confused by all the different versions (VB.NET, VB 6.0, Visual Studio, Standard versions, Professional versions, etc.) and would like to know which version I should purchase for my stated purpose.

  my intuition tells me that I have to buy the more expensive Professional version to make an app that runs without the framework installed?

  Thanks for any advice,

Who is Participating?
Hi sapbucket
Just keep one thing in mind, you can not run your .NET program on a machine which does not have a .NET Framework installed.

>> so what I am wondering is how I can make a stand-alone application that runs without the .NET framework installed.

Not Possible

Look, your code uses lot of Library (built in Classes) now untill and unless those are available on the other machine your code will fail.
.NET Framework is a bulk, it contains hundreds of classes and probably your code uses only a few. Now all these tools etc. (that you see on the links posted above) what they do is they create an installable for your program with (possibly) the least set of classes from the .NET Framework. Then when you install your App on the other machine a light weight Framework gets installed as well. Now somebody may use a different name for this light weight framework but essentially its a .Net Framework (or a part of it)

As for the "Thinstall" thing I have not used it though, but its a great thing as I have heard it does one extra step while creating an installable, it renders your IL practically un-decodable. You see the IL generated by your code is a standard format, there are tools available which can read this and re-create the Class files (Just like in Java). Now this Thinstall scrambles your files so that it can not be Reverse-Engineered.

>>>I am confused by all the different versions (VB.NET, VB 6.0, Visual Studio, Standard versions, Professional versions, etc.)

well VB6 is the old version and as S-Twilley said even that required a VB Runtime (the installable transparently installed it for you.

As for the Standard/Professional etc. they are the variations of the "SDK" they just have features to aid you to code your program, If you are that smart and tend to remeber the syntax you need none of them, all you need is a compiler and you can code using Notepad.
Just think of it like this, you can write HTML on a NotePad but that's tedious, so you use "FrontPage" and arguably DreamWeaver is a better SDK than FrontPage.
Similarly you can code .NET in NotePad but that would be really tedious so we use VS.NET Standard orProfessional.

But they just aid in writing code they have nothing to do with Running the code on various machines.
For that you must have .NET Framework.

no matter what language you choose, the PC you use it on is going to need some sort of way of "decoding" the applications native code into a language understood by the computer (like machine code/ assembly language)...

VB6 has it's runtime library which is present on many machines now...

VB.NET and the other .NET languages use the .NET Framework which you could compare to the VB6 runtime library... I did remember seeing in a previous post about this, I'll try and pull up the link in a moment...but buying the professional or most comprehensive edition of Visual Studio (which is like the "wrapper" for the different .NET languages as far as i know).. doesn't omit your code from needing the .NET framework

... well that's my understandanding of it all, sorry if I've got it wrong (you'll soon find out when i get scolded!)

And i'll look for that link
Here are a few more links where the framework is discussed:


Just glancing through them... alot of them mention "Thinstall" which i think packages the necessary components into your application... I don't know anything about it, but might be worthy of your time... good luck
Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

You MUST have the .NET Framework to compile and run your application
sapbucketAuthor Commented:
Thanks for the help, I was definitely confused!

I am now even more disappointed in Microsoft :(

Its not just with Microsoft, even Java requires a JavaRuntime

And the thing to cheer about .NET Framework is that any new release of the OS from XP/2003 onwards will contain the Framework along with the OS so you need not re-distribute it...

And I don't think it can get any better... :-)
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.

All Courses

From novice to tech pro — start learning today.