how can we remove .net framework dependency in vb.net application

hi all,
   how can we remove .net framework dependency for vb.net application while delivering it to client..
  one of my application does'nt need any support from .net framework...as it is very simple application with few buttons..

please suggest me the solution...

Manish

 
manish_prajapatiAsked:
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.

AlexFMCommented:
>> one of my application does'nt need any support from .net framework.

Any VB.NET application, even simple "Hello, World", requires .NET Framework installed on the client computer. There is no way to produce standalone VB .NET program which doesn't require .NET Framework.
0
vippxCommented:
Hi,

there is a way to compile .NET to native code using a 3rd party tool called Salamand by remotesoft.


Here is where u can get the tool and more information about it.

www.remotesoft.com

however i have not tested it, so reliability unknown..

hope this helps
0
AlexmipegoCommented:
As AlexFM said you can't, in the good way.
Before following the solutions I sugest you to, and think. If your application is for a client that knows anything about computers, it is best to ship tell him to go to windowsupdate and install .net, or just add the .NET redistr in the application CD, If, it is for servers, and .Net should not be installed because of load problems, or, if your client can't go to windows update, you have 4 solutions left:
1. Convert the application to asp.net, and deliver it in a host acessible to the client.
2. Convert the application to VB6 or C++
3. Take a look at mono-project.com. It is a reimplementation of .NET compatible with windows, Linux and even Mac. You can embend mono in a C/C++ application, like a static link. Of course this is a workarround, and the size of .Net will always be there.
4. If you don't want .Net but you can use Java, try IKVM (not sure) that can convert a .Net into a Java. If IKVM doesn't do the think there is a paid program... mainsoft or something... just search in google.
0
Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

mugman21Commented:
I would side with AlexFM,

If this is your client, and they are paying you or your company some serious money, I wouldn't recommend being a cowboy! VB.net was meant to use the .net framework, and attempting to bypass it will probably just result in more headaches than you need, and potentially losing the client. Depending on who you work for, it could also mean you losing your job.

Even if you managed to get this to work on your development machine, that doesn't mean it would work on other versions on the windows platform.

Mugman
0
vippxCommented:
Hi,

Just an opinion, but in theory, all .NET applications are finally JITed out to native code by CLR. Again the CLR being a standard and microsoft itself taking initiative to allow developers explore it, by providing a shared source implementation codenamed Rotor,  i think it is quite possible to have the .NET application compiled to native code. I beleive the salamander tool demonstrates just that.

But then here is the catch. The salamander linker pulls out and natively links only the assemblies used by the project. Although this sounds good enough, the part that worries me is the legal implications as parts of the framework are not to be distributed outside the microsoft package.

But again, in theory, you can very well compile .NET code to native code for any win32 platform.

0
Arthur_WoodCommented:
I fail to understand the nature of the client problem.  With ANY - repeat ANY -- upgrade to almost ANY Microsoft Product (Operating System(Windows 2000 or above), Database (SQL Server), Internet Explorer for example), the upgrade process itself, will install the newest release of the .NET FRamework, as PART OF THE UPGRADE - so your customer may already have the .NET Framework installed, and NOT be aware of that fact.  And it is a ONE TIME installation.

AW
0
Arthur_WoodCommented:
but as indicated, no matter how simple you think your application is, if it was developed in VB.NET, it ABSOLUTELY requires the .NET Framework - you cannot possibly write a VB.NET application that does not require the .NET Framework - that cannot be done, no matter how simple you try to make your app.

AW
0
mugman21Commented:
I just checked out that "Salamand" software, it too uses the .net framework. All it does apparently is take .net runtime components and compile them into the exe. This is kinda like the approach Borland's Delphi uses by bundling the runtime file inside the application.

This Salamand software I assume would work, but it would beef up your app several meg, might as well just go with the full .net redistributable......

Mugman
0
manish_prajapatiAuthor Commented:
Exactly,
   i only want to reduce my application size ....as i have to deliver a softphone to millions of customer....they will download it from website.i don't think most of them had already .net framework installed on their system.

 I am also packaging .net framework with my applicatio ..but it increases application size...
as told by AW .... we can't give the customer only application with .net framework.

Salamand software is again costly as well as not soving the purpose( increases the size )

so altimately it was a goood discussion...

thanks
Manish
0
vippxCommented:
Hi,

Just a finishing comment "Salamander" increases your code size.. but does not include the whole frame work, it would just pick out those assemblies that are being used in the application. so the max size that would be increased would be1 or 2 meg as compared to 20+ megs of the .NET redisttributable package. So if the size of your distributable and the convinience to the customer is a criteria, as in you dont want the hassle of separately having them install the framework, Salamander may be considered. So if ur application is really simple.. the size of your executable wont increase significantly as it would just bundle the assemblies that your code references.

For development, as AW said, you need the .NET framework installed without doubt. but with a native linker like salamander, and maybe a few more in the wings, deployment would not actually deamnd it. But then Microsoft is marketing .NET aggressively and soon would be bundled with all microsoft product, so maybe one day, you would not have to think about the framework deployment issue.
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
manish_prajapatiAuthor Commented:
Again, I would like to add up rgding the progress of the project i had undertaken.... We have stopped using Vb.net since it is bulky and newayz since mine is a company which is not aggressively in a UI design work.... it wont be possible for me to justify purchasing Salamander or any such third party product just to reduce the size of the setup executable.
Instead we have planned to make a paradigm shift and have started using VC++ which as we know can be compile with/without .NET frmwrk.
Also another strong point behind not using any .NET frmwrk is that it makes the application slow ... In my opinion and based on the collected statistics we found out that , the efficiency of a .NET application is seriously impaired as compared to a VC++ or any other language (including vb6) without .NET frmwrk.
Also ... tomm if microsoft comes out with a OS preinstalled with .NET frmwrk they still ve to support legacy(unmanaged) software/applications... and i suppose the efficiency of such applications would still be better then the apps using .NET....
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
Delphi

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.