Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

Selbstlaufende .exe erstellen? [selbstlaufend = ausführbar ohne .NET Framework]

Moderationshinweis von herbivore (03.01.2006 - 07:03)

Dies ist ein Thread, auf den aus der FAQ verwiesen wird. Bitte keine weitere Diskussion, sondern nur wichtige Ergänzungen und diese bitte knapp und präzise. Vielen Dank!

towanda
myCSharp.de - Member



Dabei seit:
Beiträge: 20

Themenstarter:

Selbstlaufende .exe erstellen? [selbstlaufend = ausführbar ohne .NET Framework]

beantworten | zitieren | melden

Hallo

Ich habe eine Art MatheProgramm mit VS Prof. 2003 geschrieben und möchte das Ganze jetzt aber gerne an PCs verwenden können ohne Framework 1.1 etc...

Wie kann ich das Programm in VS zu einer selbstlaufenden .exe umwandeln ? Oder geht das garnich ? Zwar ist nach dem kompilieren immer eine .exe im \bin folder, aber die läuft leider nicht auf PCs ohne .Net Framework.

Danke

towanda
private Nachricht | Beiträge des Benutzers
Noodles
myCSharp.de - Experte



Dabei seit:
Beiträge: 4.644
Herkunft: Leipzig

beantworten | zitieren | melden

Forumsuche hilft: c# ohne framework
private Nachricht | Beiträge des Benutzers
Meli
myCSharp.de - Member



Dabei seit:
Beiträge: 115
Herkunft: Traisen, Austria

beantworten | zitieren | melden

Ich glaube mich an ein Cannel9 Video zu erinnern, wo der
Interviewer (Charles) gegenüber den Entwicklern erwähnte, das das
Framework einfach zu groß sei.

Ein Net Entwickler meinte :"Es sei etwas in Entwicklung, aber noch zu
früh für eine Ankündigung!"

Scheint also doch ein "Problem" zu sein....

Meli
Gernot Melichar
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo Meli,

siehe Vergleich mit DirectX .exe hertsellen

Außerdem werden Internet-Verbindungen immer schneller.

Und dann wird die Runtime mit zukünftigen Windows-Versionen gleich mit ausgeliefert.

Ich sehe da also wirklich kein Problem.

herbivore
private Nachricht | Beiträge des Benutzers
Noodles
myCSharp.de - Experte



Dabei seit:
Beiträge: 4.644
Herkunft: Leipzig

beantworten | zitieren | melden

Außerdem benötigt man das .NET Framework nicht um .NET Anwendungen auszuführen. Man benötigt die Runtime, dass ist ein ziemlicher Größenunterschied.
private Nachricht | Beiträge des Benutzers
Meli
myCSharp.de - Member



Dabei seit:
Beiträge: 115
Herkunft: Traisen, Austria

beantworten | zitieren | melden

Ja, ist mir alles bekannt.
Ich selbst habe auch kein Problem damit und spätestens mit
Windows Vista hat sich das alles sowieso erledigt.

Ich wollte nur auf dieses Statement der Net-Entwickler hinweisen.


Meli
Gernot Melichar
private Nachricht | Beiträge des Benutzers
Druid
myCSharp.de - Member



Dabei seit:
Beiträge: 155
Herkunft: Essen

beantworten | zitieren | melden

Warum fragen alle Leute nach einer Möglichkeit ihre .NET Programme ohne .NET auszuführen. Das wäre ja als wenn ich ein Windowsprogramm ohne Windows ausführen möchte. .NET hat nicht umsonst die Bezeichnung "Platform".
private Nachricht | Beiträge des Benutzers
S.H.-Teichhof
myCSharp.de - Member

Avatar #avatar-2460.jpg


Dabei seit:
Beiträge: 1.549
Herkunft: Sindringen

beantworten | zitieren | melden

Ich glaube ihnen ist nicht bewusst was .Net wirklich ist sie denken das C# eine Sprache wie C++ ist in der man Programme ohne irgendwelche Voraussetzungen zu erfüllen auf einen anderen Computer übertragen kann (mir ist schon bewusst das es lange nicht so einfach ist)
Wir Arbeiten eigendlich nicht wir nehmen nur das geld
private Nachricht | Beiträge des Benutzers
cmpxchg
myCSharp.de - Member



Dabei seit:
Beiträge: 192

beantworten | zitieren | melden

Also ich finde es auch dumm, dass man bei c# dazu gezwungen ist, die Runtime zu installieren. Dies ist bei VB genauso. Leider kann man mit dieser Sprache keine kleinen, schlanken programme schreiben. Microsoft ist der Monopolist und meint, dass die Zukunft in den Runtimes liegt. Wir müssen uns beugen.

Ich hab aber vor kurzem einen Prelinker für .NET Programme im internet entdeckt. Leider habe ich keinen link aber suche doch mal. Mit ihm soll es möglich sein, benötigte funktionen der .NET Runtime in die .exe zu packen und dann die .exe ohne runtime zu starten.

Suche mal und poste hier her den link
private Nachricht | Beiträge des Benutzers
.unreal
myCSharp.de - Member

Avatar #avatar-1903.gif


Dabei seit:
Beiträge: 563
Herkunft: Nähe Zürich

beantworten | zitieren | melden

warum soll das "dumm" sein?

microsoft ist nicht der einzige, java braucht das auch damit c++ programme auf anderen systemen läuft, muss man das auch anders kompilieren etc.

du musst die vorteile darin sehen! gibt es eine andere sprache, in dem man so einfach wie in .net eine klasse mit vb schreiben kann, und mit c# problemlos ansprechen? das runtime erleichtert die programmierung extrem. wenn dir das nicht passt, probiers mal mit einer anderen programmiersprache, dann siehst du, wie komfortabel .NET ist.
private Nachricht | Beiträge des Benutzers
cmpxchg
myCSharp.de - Member



Dabei seit:
Beiträge: 192

beantworten | zitieren | melden

Aber bei Java macht es auch richtig sinn. Die Javaprogramme sind Plattformunabhängig. Sie laufen ohne neukompilierung auf jedem Rechner, auf jedem Handy und auf jedem Betriebssystem. Und das ist ein echter Grund für ein Runtime Environment.
Aber bei c#? Ne. Bei c++ muss man auch keine Programme neu kompilieren, solange man unter demselben betriebssystem bleibt und bei Delphi auch nicht.

Was wäre, wenn du ein Programm zur Kundenbefragung schreiben willst. Dieses Programm hat einfach nur eine Form 5 buttons und es ist 4 Seite c#-Code.

Jetzt schickst du es mal den 1000 Kunden zu und sie sollen darauf rumklicken und die Fragen beantworten.

Wieviele Kunden werden wohl dieses Miniprogramm verwenden, wenn sie zusätzlich zu den 30kb exe-File noch 200MB Runtime runterladen müssen?
Wieviele Kunden sind wohl zu dumm dazu, das runtime zu installieren?
Und bei wievielen der 1000 Kunden ist danach wohl der Rechner im Arsch, weil die .NET installiert haben?
Wieviele Kunden werden wohl die 20min runtime installation für so ein kleines mini-Frageprogramm in Kauf nehmen?

So ein Runtime hat auch gravierende Nachteile. Bis jetzt ist es ja nur pseudoPlattformunabhängig und später, wenn es die winApiCalls gibt, dann sind die Programme wohl garnicht mehr plattformunabhängig, weil man sie doch von win98-winxp auf allen Betriebssystemen testen muss
private Nachricht | Beiträge des Benutzers
Noodles
myCSharp.de - Experte



Dabei seit:
Beiträge: 4.644
Herkunft: Leipzig

beantworten | zitieren | melden

Die Runtime ist nicht 200MB und Java ist eine eigene Plattform genauso wie .NET ( da hinkt es mit der Plattformunabhängigkeit ).
private Nachricht | Beiträge des Benutzers
cmpxchg
myCSharp.de - Member



Dabei seit:
Beiträge: 192

beantworten | zitieren | melden

Und wer ist daran wohl schuld?

Ausser Microsoft niemand

Ausserdem, was ändert es daran, dass eine Runtime scheisse ist?
private Nachricht | Beiträge des Benutzers
Noodles
myCSharp.de - Experte



Dabei seit:
Beiträge: 4.644
Herkunft: Leipzig

beantworten | zitieren | melden

An was? Das die Runtime nicht 200 MB ist sondern kleiner? Oder das Java und .NET eigene Plattformen sind?
Zitat
Ausserdem, was ändert es daran, dass eine Runtime scheisse ist?

Es gibt auch andere Sprachen, man muss ja nicht zwingend mit C#/.NET arbeiten.
private Nachricht | Beiträge des Benutzers
cmpxchg
myCSharp.de - Member



Dabei seit:
Beiträge: 192

beantworten | zitieren | melden

Wieviele Kunden werden wohl dieses Miniprogramm verwenden, wenn sie zusätzlich zu den 30kb exe-File noch 40MB Runtime runterladen müssen?
Wieviele Kunden sind wohl zu dumm dazu, das runtime zu installieren?
Und bei wievielen der 1000 Kunden ist danach wohl der Rechner im Arsch, weil die .NET installiert haben?
Wieviele Kunden werden wohl die 20min runtime installation für so ein kleines mini-Frageprogramm in Kauf nehmen?
private Nachricht | Beiträge des Benutzers
.unreal
myCSharp.de - Member

Avatar #avatar-1903.gif


Dabei seit:
Beiträge: 563
Herkunft: Nähe Zürich

beantworten | zitieren | melden

du wirst auch nicht gezwungen, .NET zu verwenden! am besten machst du den doktortitel indem du deine miniapplikation in c++ schreibst. man muss die vorteile nutzen. du siehst keine? dann programmier in einer anderen sprache (wie z.b in deinem fall)

btw: die runtimes sind 25MB gross, die installation geht automatisch.
private Nachricht | Beiträge des Benutzers
.unreal
myCSharp.de - Member

Avatar #avatar-1903.gif


Dabei seit:
Beiträge: 563
Herkunft: Nähe Zürich

beantworten | zitieren | melden

Zitat
Wieviele Kunden werden wohl dieses Miniprogramm verwenden, wenn sie zusätzlich zu den 30kb exe-File noch 40MB Runtime runterladen müssen?
25mb
Zitat
Wieviele Kunden sind wohl zu dumm dazu, das runtime zu installieren?
ist vollautomatisch
Zitat
Und bei wievielen der 1000 Kunden ist danach wohl der Rechner im Arsch, weil die .NET installiert haben?
warum soll es den computer zerstören?
Zitat
Wieviele Kunden werden wohl die 20min runtime installation für so ein kleines mini-Frageprogramm in Kauf nehmen?
nicht alle
private Nachricht | Beiträge des Benutzers
cmpxchg
myCSharp.de - Member



Dabei seit:
Beiträge: 192

beantworten | zitieren | melden

Zitat
Original von .unreal
Zitat
Wieviele Kunden werden wohl dieses Miniprogramm verwenden, wenn sie zusätzlich zu den 30kb exe-File noch 40MB Runtime runterladen müssen?
25mb
Zitat
Zitat
Wieviele Kunden sind wohl zu dumm dazu, das runtime zu installieren?
ist vollautomatisch
wieviele Kunden sind wohl dazu zu dumm?
Zitat
Zitat
Und bei wievielen der 1000 Kunden ist danach wohl der Rechner im Arsch, weil die .NET installiert haben?
warum soll es den computer zerstören?
warum soll es einwandfrei auf jedem Rechner auf der Ganzen Welt unter Garantie funktionieren?
Zitat
Wieviele Kunden werden wohl die 20min runtime installation für so ein kleines mini-Frageprogramm in Kauf nehmen?
nicht alle
private Nachricht | Beiträge des Benutzers
boco25
myCSharp.de - Member



Dabei seit:
Beiträge: 483
Herkunft: Frankfurt

beantworten | zitieren | melden

Hallo,
ich verstehe überhaupt nicht die Aufregung. In jedem Buch über .NET steht, dass man die Framework braucht. Auf Windows-Server 2003 und neuen Windows-Versionen soll Framework schon vorinstalliert sein.

Was die Kunden eher stört, dass man 1.0, 1.1 und 2.0 in schlimmsten Fall alle zusammen braucht.

Mit freundlichen Grüssen,
Boris.
private Nachricht | Beiträge des Benutzers
Noodles
myCSharp.de - Experte



Dabei seit:
Beiträge: 4.644
Herkunft: Leipzig

beantworten | zitieren | melden

Zitat
Original von boco25
In jedem Buch über .NET steht, dass man die Framework braucht.

Die Runtime reicht aber aus, man braucht also nicht das Framework um
Programme laufen zu lassen.
Zitat
Original von boco25
Auf Windows-Server 2003 und neuen Windows-Versionen soll Framework schon vorinstalliert sein.

Ich kenne nur 2003 wo das der Fall ist.
private Nachricht | Beiträge des Benutzers
boco25
myCSharp.de - Member



Dabei seit:
Beiträge: 483
Herkunft: Frankfurt

beantworten | zitieren | melden

Klar die Runtime habe ich gemeint,

Windows-Vista, oder wie die neue Version genannt wird, soll .NET beinhalten.
private Nachricht | Beiträge des Benutzers
Noodles
myCSharp.de - Experte



Dabei seit:
Beiträge: 4.644
Herkunft: Leipzig

beantworten | zitieren | melden

Das API in Vista wird/soll in .NET implementiert sein, dann ist das Runtime Thema gegessen. Aber es wird noch solang dauern, bis Kunden auf Vista wechseln, dass das auch noch lange ein Thema bleiben wird.

Wie Windows für Microsoft zum Alptraum wurde
private Nachricht | Beiträge des Benutzers
boco25
myCSharp.de - Member



Dabei seit:
Beiträge: 483
Herkunft: Frankfurt

beantworten | zitieren | melden

Danke, für den Link. Mit der Umstellung kann ich leider nicht widersprechen.
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo cmpxchg,
Zitat
Also ich finde es auch dumm, dass man bei c# dazu gezwungen ist, die Runtime zu installieren. Dies ist bei VB genauso. Leider kann man mit dieser Sprache keine kleinen, schlanken programme schreiben. Microsoft ist der Monopolist und meint, dass die Zukunft in den Runtimes liegt. Wir müssen uns beugen.
ich verstehe ich Aufregung auch nicht. Bei DirectX haben wir die gleiche Situation und sie wird - außer von Unwissenden - nicht ernsthaft in Frage gestellt.

Außerdem läuft kein Programm ohne Runtime. Was meinst du, wie groß die Win32-Runtime ist? Nur ist die ins Betriebssystem integriert. Das wird bei zukünftigen Windowsversionen mit .NET auch der Fall sein. Es geht hier nur um eine Übergangszeit. Die Alternative für MS wäre gewesen, keinen separaten Download anzubieten, sondern zu warten, bis .NET in Windows Vista integriert ist. Das wäre für uns alle ein Zeitverlust von ein paar Jahren gewesen - nur wegen einer völlig schrägen Argumentation.

Und das Argument mit den 30KB Programmen und dem 200MB Download (der ja nur ein 25MB Download ist) kann ich auch nicht mehr hören, weil es ja völlig verkennt, dass man nur beim ersten .NET-Programm den 25MB Download machen muss und dann alle weiteren 30KB Programme nur einen 30KB Download erfordern. Irgendwann wird also die Summe der heruntergeladenen .NET-Programme größer als die Runtime (es sind ja nicht immer nur 30kb).

herbivore
private Nachricht | Beiträge des Benutzers
Druid
myCSharp.de - Member



Dabei seit:
Beiträge: 155
Herkunft: Essen

beantworten | zitieren | melden

Ich frage mich wirklich warum ich bei einem 30KB Programm .NET benötige. Das macht man doch in Assembler. LOL
private Nachricht | Beiträge des Benutzers
.unreal
myCSharp.de - Member

Avatar #avatar-1903.gif


Dabei seit:
Beiträge: 563
Herkunft: Nähe Zürich

beantworten | zitieren | melden

word @herbivore!


ich mag diese "Microsoft ist scheisse"-brüller überhaupt nicht...
private Nachricht | Beiträge des Benutzers
S.H.-Teichhof
myCSharp.de - Member

Avatar #avatar-2460.jpg


Dabei seit:
Beiträge: 1.549
Herkunft: Sindringen

beantworten | zitieren | melden

Das stimmt die Leute die MS ist Schei*** brüllen machen das meist ohne wirklich nach zu denken natürlich kann man darüber streiten ob dieser oder jene schritt das richtige ist aber was .NET betrifft ist doch wirklich zu sagen das MS im großen und ganzen eigentlich kaum Fehler gemacht hat (auch wenn meiner Ansicht nach die Runtime ins SP2 von Win XP gehört hätte)
Wir Arbeiten eigendlich nicht wir nehmen nur das geld
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo S.H.-Teichhof,
Zitat
auch wenn meiner Ansicht nach die Runtime ins SP2 von Win XP gehört hätte
ist sie da nicht drin? Ich kenne zumindest mehrere Leute mit XP, die .NET Runtime auf dem Rechner haben, ohne dass sie das (für sich) installiert hätten.

herbivore
private Nachricht | Beiträge des Benutzers
S.H.-Teichhof
myCSharp.de - Member

Avatar #avatar-2460.jpg


Dabei seit:
Beiträge: 1.549
Herkunft: Sindringen

beantworten | zitieren | melden

Nein so viel ich weiß ist sie nicht drin aber die Leute können ja über andere Programme die sie installiert haben die Runtime bekommen haben und es nicht mitbekommen haben
Wir Arbeiten eigendlich nicht wir nehmen nur das geld
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 49.486
Herkunft: Berlin

beantworten | zitieren | melden

Hallo S.H.-Teichhof,

zumindest Jim Mischel ist da zusammen mit mir anderer Meinung:
Zitat
I believe they will begin upgrading this year, installing Windows 2003 on their servers and Windows XP SP2 on the desktops. Both of those operating systems include the .NET Runtime version 1.1 in the default installation.
herbivore
private Nachricht | Beiträge des Benutzers