C# Source to independent (from .net framework) binary compiler (alternative to remotesoft)

S

sam

It can compile .net code to native code which can run without an
installed .net framework. This would remove one of the greatest
disadvantages from C#.

Sounds quite interesting.
http://www.remotesoft.com/linker/intro.html

But it`s a bit expensive.

Someone already tested it? How big are the files? Normal binary file
size + hole framework size or smaller?

Why did microsoft not publish such an compiler themself? It`s much
better then asking clients to install .net. The programms are more
easy then and can run standalone/portable.

Is there any other native .net compiler?
 
R

Russell L. Smith

It can compile .net code to native code which can run without an
installed .net framework.

Does this comply with the redistribution terms for the .NET framework?

The web site states this statically links required pieces of the .NET
framework. What happens when Microsoft patches a functional or security
problem within the .NET framework, must you relink and redistribute your
application to all users? Ouch.
 
A

Andy

It can compile .net code to native code which can run without an
installed .net framework. This would remove one of the greatest
disadvantages from C#.

Sounds quite interesting.http://www.remotesoft.com/linker/intro.html

But it`s a bit expensive.

Someone already tested it? How big are the files? Normal binary file
size + hole framework size or smaller?

Why did microsoft not publish such an compiler themself? It`s much
better then asking clients to install .net. The programms are more
easy then and can run standalone/portable.

Is there any other native .net compiler?

I don't think its a good idea. If the framework is patched, your
program won't be affected.

The installation base of the framework is growing, and i don't see it
being a disadvantage. 1.1 of the framework is installed by default on
Win2k3, 2.0 on Win2k3 R2 versions, 3.0 on Vista (all editions).

Given that, and given you can install the framework along with your
application, I don't think that you need to worry much about the
framework being installed.

If speed is an issue, you can use ngen to compile your assemblies
futher and gain performance.
 
S

sam

The point is that a C(++) programm can run out of the box, without any
installation. C# not.

But interesting view. Never thought about this argument. But... For C?
Could be that some lib needs patching... I also think my apps are more
hurt able then the framework. :)

However, this was an interesting point but not the question. There is
also no such alternative compiler?
 
J

Jon Skeet [C# MVP]

The point is that a C(++) programm can run out of the box, without any
installation.

Only if the required OS is installed, of course...

Unless you've got Vista or Win2K, of course...
But interesting view. Never thought about this argument. But... For C?
Could be that some lib needs patching... I also think my apps are more
hurt able then the framework. :)

Not sure what you mean here.
However, this was an interesting point but not the question. There is
also no such alternative compiler?

Not that I'm aware of. Personally I've never been a fan of it as an
idea.
 
S

sam

Only if the required OS is installed, of course...
Yes, but programs created for windows will run standalone on all
windows platforms.
Unless you've got Vista or Win2K, of course...
But many people have WinXP right now and will continue for a long
time.
Not sure what you mean here.
I mean that the standard user will be not aware that the .net
framework needs updating. If he doesn`t use windows update he won`t
get a fixed version.

All programmms can have security problems. Therefore them need
updates.

If you write in C you will probably use external sources aswell too.
Those can include security holes. As a developer you must relay on
news so or so and update your apps then.

That C# compiled sources (.exe) need that .net framework to run is one
of the biggest disadvantage of C# imho. Guess for that reason no
"professional developers" like devs for games/antivirus and so on
don`t use .net right now.

A native compiler would be just awesome. So, if someone has used
please give feedback.
Not that I'm aware of. Personally I've never been a fan of it as an
idea.
Thanks for telling me.
 
J

Jon Skeet [C# MVP]

Yes, but programs created for windows will run standalone on all
windows platforms.

No. If I write something which uses Vista-specific calls, it won't run
on XP.
But many people have WinXP right now and will continue for a long
time.

True - so they won't be able to use Vista-specific programs either.
I mean that the standard user will be not aware that the .net
framework needs updating. If he doesn`t use windows update he won`t
get a fixed version.

True - but I would hope that most people who care about security even
*slightly* use Windows update these days.
All programmms can have security problems. Therefore them need
updates.

Yes - so they should have Windows update on. Note that an update to a
"just the managed code" program is likely to be a lot smaller than an
update to a "managed code and framework combined" program - not to
mention the fact that if you have 3 programs which all need updating
due to the same framework bug, you'd have to update all 3 (having been
contacted by the suppliers) rather than having Windows Update just fix
it.

A lot of people have Windows Update turned on - but how many regularly
check for newer versions of *every* application they run?
If you write in C you will probably use external sources aswell too.
Those can include security holes. As a developer you must relay on
news so or so and update your apps then.

Indeed, unless those are covered by Windows update.
That C# compiled sources (.exe) need that .net framework to run is one
of the biggest disadvantage of C# imho. Guess for that reason no
"professional developers" like devs for games/antivirus and so on
don`t use .net right now.

At least one anti-virus company uses .NET for some of their management
tools, IIRC. Games have tended to need "close to the metal" access
which .NET hasn't provided very well before, although XNA may make a
difference. The unpredictability of the GC (in terms of pauses) is a
problem for games, too.

Both my current job and my previous job have involved writing "shrink-
wrapped" .NET applications though.
 
C

Chris Mullins [MVP]

All programmms can have security problems. Therefore them need
updates.

Updates are a fact of life. New Versions, New Features, Improved Security,
New Language Packs, all need to be handled via updates. Click-Once
deployment has an excellent mechanism for this. It lets you build apps that
can be easily updated. There are a number of 3rd party update packages you
can use if Click-Once doesn't fit your needs.
That C# compiled sources (.exe) need that .net framework to run is one
of the biggest disadvantage of C# imho.

Totally.

Good thing that the other really popular language - that ones that beings
with J - doesn't work like this. I mean, heck, if that language required
it's own framework and runtime, nobody would use it.
Guess for that reason no "professional developers" like devs
for games/antivirus and so on don`t use .net right now.

Totally.

All the developers here are just hobbiest - we don't work for real
companies, and don't put out real software. Everything we do is related to
homework assignments given to us by BillG, SteveB & RayO.
A native compiler would be just awesome. So, if someone has used
please give feedback.

So use one. The RemoteSoft products do this, as do a few others. I've posted
about it, and the other varations on it, a number of times. Google archives
this - just search for RemoteSoft in Google Groups.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top