I had a fair amount of experience with much older versions of VB, but recently made the switch to VB.net and am trying to figure my way out through the changes.
I have a small form program that is basically an interface for installing different software packages so that we can distribute a CD with our products that our customers can just pop in the drive, autorun, and click the button to install what they need. The problem that I am running into is unlike when I had built this same program in VB6, the program rewritten in VB.net will not run on some machines, and shows me an error:

.net Framework initialization error
required version of .net framework v2.0.50727

I realize that it is asking for that version of .net framework in order to run, but what I would really like to know is if there is a way to make my exe non-dependant on this so that it will run on any machine. Requiring my customers to install .net framework in order to access an interface designed just to idiotproof the installation of some setup files and provide easy access to a few pdf's really would just defeat the purpose.

Any help on this would be greatly appreciated... it's really giving me a headache.

I had a fair amount of experience with much older versions of VB, but recently made the switch to VB.net and am trying to figure my way out through the changes.
I have a small form program that is basically an interface for installing different software packages so that we can distribute a CD with our products that our customers can just pop in the drive, autorun, and click the button to install what they need. The problem that I am running into is unlike when I had built this same program in VB6, the program rewritten in VB.net will not run on some machines, and shows me an error:

.net Framework initialization error
required version of .net framework v2.0.50727

I realize that it is asking for that version of .net framework in order to run, but what I would really like to know is if there is a way to make my exe non-dependant on this so that it will run on any machine. Requiring my customers to install .net framework in order to access an interface designed just to idiotproof the installation of some setup files and provide easy access to a few pdf's really would just defeat the purpose.

Any help on this would be greatly appreciated... it's really giving me a headache.

I believe if you have the right version of .net programming compiler you can specify to include the .net framework on the install disk. But the downside is that it still has to be installed. I would suggest that you might want to look at another installer product. However I don't think that will solve your problem either unless your products are not written in one of the .net languages. IF they are, you still need the correct net framework version to run them.

I had a fair amount of experience with much older versions of VB, but recently made the switch to VB.net and am trying to figure my way out through the changes.
I have a small form program that is basically an interface for installing different software packages so that we can distribute a CD with our products that our customers can just pop in the drive, autorun, and click the button to install what they need. The problem that I am running into is unlike when I had built this same program in VB6, the program rewritten in VB.net will not run on some machines, and shows me an error:

.net Framework initialization error
required version of .net framework v2.0.50727

I realize that it is asking for that version of .net framework in order to run, but what I would really like to know is if there is a way to make my exe non-dependant on this so that it will run on any machine. Requiring my customers to install .net framework in order to access an interface designed just to idiotproof the installation of some setup files and provide easy access to a few pdf's really would just defeat the purpose.

Any help on this would be greatly appreciated... it's really giving me a headache.

Unfortunately, .NET languages are a managed programming language, therefore, you will have to have the .NET framework in on each machine in order to run your executable on those other machines.

That being said, something like Visual C++ can compile code and not be .NET dependent if using the right library's.

Hope this helps.

All programming languages are dependent on some type of base class files that it calls for functionality. Dot net attempts to include all in the dot net framework instead of a ton of seperate files (dll hell) . Even languages such as C++ will use system dll files.

vb.net will not run if the .net framework is missing. So your alternatives are vb6 or vc++ or an installer. For vc++ change the runtime library in C/C++>Code Generation>Runtime Library to Multi-threaded (/MT) to remove the .net dependancy dll.

This article has been dead for over six months. Start a new discussion instead.