Click here to Skip to main content
15,879,096 members
Please Sign up or sign in to vote.
4.00/5 (1 vote)
HI Guys,

some time back i developed a desktop application which was in dot net c #.

The problem we faced was that it required dot net framework 2 for installation on customers computer,

My question is what other application can be used to develop computer softwares which does not require installing framework?

Is VB a good idea ?

I am also looking for VB freelancers.

Thanks
Mike
Posted
Comments
Sergey Alexandrovich Kryukov 21-Jan-11 23:22pm    
I don't put this as an answer to avoid the flame. I never heard a serious developer ever considered VB (except it's the only options). Also, after serious revival of VB in the form of VB.NET, Microsoft paid less and less attention to VB in favor of C#, F#... Just a food for thought.
Indivara 22-Jan-11 1:46am    
You're right about the "flame" part :)
It's not that simple really, VB *is* a viable option in some cases. I've known companies to hire VB-only programmers to keep costs down
Sergey Alexandrovich Kryukov 25-Jan-11 12:27pm    
If the programmers are cheep, what's the result? How about "the greedy one pays twice"?
Anyway, what's a viable option highly depend on personal position. You can solve any problem in Assembly language, so what?

Thank you.
--SA
T2102 22-Jan-11 18:46pm    
VB is utilized for maintaining legacy applications that people do not want to port and VBA is utilized to allow inferior programmers to create quick solutions for Excel.
T2102 22-Jan-11 18:57pm    
Even if you do not use .NET, you may need to distribute msvcr100.dll and msvcp100.dll or similar files to your clients. I used my wife's 7 year old machine as a test machine once and needed to copy those files.

There is no compiler I know of which can make a C# app run on a computer without the .Net Framework in some form; C# is the first language designed from the start to use the CLR and Framework. No Microsoft OS since XP has shipped without some version of the .Net Framework, so if you need to support customers using obsolete operating systems, you'll have to port your app to another language and attempt to duplicate any .Net Framework functionality you need manually. You might be able to accomplish this with an older version of C++ or even VB, but you'll probably be much happier if you abandon customers who refuse to use 21st century products.
 
Share this answer
 
Comments
T2102 22-Jan-11 19:00pm    
The issue is that Microsoft compilers require the .NET frameworks even when you write native C++ with no CLR support. They made this change in 2003 to try to forcefully roll-out .NET. There might be a way around it, but I did not find a solution before.
Use Delphi[^] or C++ builder[^]

Lets you deploy a single executable file, nothing else required, if that's what you require.

Includes royalty free powerful reporting engine, components for most popular network protocols[^], components supporting rappid development of database centric applications (often with less development effort than .Net), and much more.

Tons of available open source and commercial 3rd party[^] components.

Here is a few of my commercial favourites:

RemObjects SDK[^] - WCF like functionality - interoperates quite well with .Net and Java based solutions.

Data Abstract[^] - Built on top of RemObjects SDK, puts the RIA framwork to shame.

DevExpress VCL Controls[^] - more than 150 controls for Delphi and C++ builder - really high quality

Steema TeeChart Pro[^] - one of the most feature complete chart components around


A few open source favourites:

Gexperts.org/[^] GExperts is a free set of tools built to increase the productivity of Delphi and C++Builder programmers by adding several features to the IDE. GExperts is developed as Open Source software

JVCL[^] an astounding amount of components and libraries

Regards
Espen Harlinn
 
Share this answer
 
v5
Comments
Sergey Alexandrovich Kryukov 22-Jan-11 14:48pm    
Very interesting list, good to know - my 5. I really like Delphi (perhaps I mentioned that earlier).
Espen Harlinn 23-Jan-11 8:13am    
Since I know you like Delphi/C++ builder and the question is "My question is what other application can be used to develop computer softwares which does not require installing framework?" I was a bit surprised that you went for the .Net angle.

Delphi/C++ builder can do what he wants, and neither .Net nor VB6 and earlier can.
Sergey Alexandrovich Kryukov 23-Jan-11 13:32pm    
By the way, I never used C++ builder. I mean Delphi, Object Pascal and Delphi Pascal.

I supported your advice, but I still think going .NET is generally a better way (well, apparently the application field make a lot of difference). My major intent is strategic. I hope convoluted legacy-heavy Windows style is going; and I feel Microsoft's move away from Windows. Let's consider a move from System.Windows.Forms to WPF. As you know very well, WPF is based on DirectX, which is not tightly bound to Windows: it's supported by hardware, and so on. I already mentioned non-Windows systems like Singularity, BarrelFish and so on. And how about 3-rd party CosmOS, SharpOS? So I would really like to put more weight on this side.

At the same time, I'm really frustrated about great Delphi developments which did not found their way into .NET, lack if meta-classes, first of all. But in fact, do you know what frustrates me the most in everyday development? Lack of definition/inheritance of primitive types. And you cannot even say in generic declaration "where OPERAND : int". Even stupid C++ has "typedef" which is of course not a type definition but at least a work-around to share a single definition in a project-wide manner.
Espen Harlinn 23-Jan-11 16:25pm    
Singularity and BarrelFish are MS research os'es.

CosmOS - so that's what Chad Z. Hower is doing these days - I was kind of hoping for a real finnished .Net version of Indy :( SharpOS? ???

Leveraging the commercial libraries I mentioned - I should usually be able to shave off 10-15% of the development time for a regular basic LOB database centric app compared to doing the same thing in .Net. If it's not a regular basic LOB database centric app I'll do it faster in c# and .Net.

The ability to deploy a single executable has proven valuable on a number of occasions - so I can understand why OP would like this :)

Sergey Alexandrovich Kryukov 25-Jan-11 11:46am    
I do understand that, too, and I would like such possibility as well. Mentioning other platforms is an attempt to bring attention to the trend which is a bit of justification (may by with elements of wishful thinking :-) for .NET way.
I would like to discharge your concerns about .NET. A Microsoft system with no Framework of a Framework version less than 2.0 is rendered a nonsense long time ago. Windows 7 (and even Vista), Windows Server 2008 all shipped with .NET already, besides, it's easy to bundle .NET Framework with any application.

In practice, any advanced user installs .NET on everything started from, perhaps Windows 2000 (where only .NET Framework 2.0 can be installed); respective .NET Frameworks are installed as prerequisites for any version of Visual Studio .NET: Framework v.2.0 comes with Visual Studio 2.0.

I haven't seen a system with more or less modern version of .NET for ages.
On many Linux distributions Mono package (multi-platform implementation on .NET) is a standard optional package, current version is compatible with .NET v.3.5 (a standard subset + a lot of non-standard). I compile my applications on Windows and run on Linux, even Windows UI applications.

It also should be noted that for .NET language limitations and barriers no longer exist. In contrast to native Windows, all .NET languages are made compatible, also, there are no barriers between DLLs, as modularity is done via executable modules and assemblies. If an assembly is using another a DLL, it either reference it or dynamically loads, and this is done the without any differences in what language a foreign assembly is written. Also, there are no more header files or link libraries: assemblies are self-contained. If you send an assembly if executable form, it contains all definitions and its meta-data: the user will immediately see and use (call, read, modify, etc.) all the public types, methods, properties and variables...

What else would you need to remove any doubts?
 
Share this answer
 
v3
Comments
Sandeep Mewara 22-Jan-11 0:50am    
Comment from OP:
hi

i know the systems come with framework these days

But there are lacs of systems used world wide without framework still and micirosft updates does not automatically install framework.

So we loose buisness here
Sergey Alexandrovich Kryukov 22-Jan-11 0:58am    
Well, I'm not sure. Please pay attention: I said: "it's easy to bundle .NET with any application", so "automatic install" is not needed. Also, did you know that the Framework with C# compiler and all tools comes for free, provided OS is installed? So your worries about loosing business are somewhat exaggerated. Also, don't forget that Microsoft tends to slowly drift out of Windows but keeping .NET: they already implemented one non-Windows .NET based OS (Singularity) and started at least two more.

Anyway, the final solutions and responsibility is yours. I only give you information and my reasons. Your will need to develop yours.

Good luck,
--SA
Sandeep Mewara 22-Jan-11 1:04am    
:doh:
Comment from OP...again:
well there are dot net frmework compilers but the problems is that they make the orginal application too heavy upto 80 mb

Can you suggest some compilers
Sergey Alexandrovich Kryukov 22-Jan-11 1:20am    
Again, I don't know your situation. May be you want to develop for very low-spec PCs in Third Word, where even minimal .NET Framework is two heavy. But if this is true, whole Microsoft world is wrong: then you need Linux (and maybe again .NET in the form of Mono as a realistic option). You see, I maybe not familiar with the word of very chip computers, but I'm not using very expensive ones as well (for development).
This is you who have to find balance...

Thank you.
--SA

Please do everyone a favor: reply in comments, don't post as a Answer -- I won't be notified; and such untrue answers will be removed. Use "Reply" or "Add Comment".
Sergey Alexandrovich Kryukov 22-Jan-11 1:27am    
Again, I don't know your situation. May be you want to develop for very low-spec PCs in Third Word, where even minimal .NET Framework is too heavy. But if this is true, whole Microsoft world is wrong: then you need Linux (and maybe again .NET in form of Mono as a realistic option). You see, I maybe not familiar with the word of very chip computers, but I'm not using very expensive ones as well (for development).
This is you who have to find balance...

Thank you.
--SA

Please do everyone a favor: reply in comments, don't post as a Answer -- I won't be notified; and such untrue answers will be removed. Use "Reply" or "Add Comment".
If you use Visual Studio 2002 and prior, then your clients do not need the .NET frameworks.
 
Share this answer
 
Comments
Sergey Alexandrovich Kryukov 22-Jan-11 1:30am    
How version of the Visual Studio related to the product spec for the customer? Those are two different things.
T2102 22-Jan-11 18:43pm    
Your answer is NOT correct. I've had the misfortune of dealing with annoying Windows 2000 users and Windows XP SP2 users that do not have the .NET framework. They could not use native C++ code with not CLR support written in Visual C++ versions 2003 through 2008.
T2102 22-Jan-11 18:52pm    
They also refused to upgrade their machines since they used an old accounting legacy application that was incompatible with some windows update. After months of arm twisting, I had to have the COO force them to use a single machine for the legacy app and upgrade the other machines.
Albert Holguin 5-Feb-11 22:57pm    
There isn't even a 2002 version of Studio.
T2102 5-Feb-11 23:21pm    
I am referring to the year 2002 on the release date for the discs; before .NET 2003 edition. I had the disks for every release since 6.0 at a former employer.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900