Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

27.03.2009, 22:19

Visual C++ 2008: Programm weitergeben

Ich weiß, dass wahrscheinlich die meisten meiner Fragen schon einmal beantwortet wurden, trotzdem finde ich alles verwirrend, und mir fehlt einfach ein Überblick. Deswegen frage ich hier nochmal.

Meine Frage ist eigentlich ganz einfach:
Wie kann ich mit Visual Studio C++ 2008 Express ein Programm erstellen, das ich ganz normal an andere Rechner weitergeben kann, und das dort natürlich auch korrekt ausgeführt wird? Wie geht ihr da normalerweise vor?

Es ist ja so, dass standardmäßig irgendwelche dlls im Projekt gelinkt werden, sodass das Programm einem anderen PC manchmal nicht so ohne weiteres gestartet werden kann.
Man kann natürlich in den Projekteigenschaften statisch linken (also Multithreaded auswählen). Aber:
1. Geht das denn auch bei größeren Projekten, oder nur bei Konsolenanwendungen?
2. Von Microsoft wird ja davon abgeraten, das so zu machen, weil es dann schlechter zu warten ist usw.

Eine andere Möglichkeit ist, wenn ich das richtig verstanden habe, alle benötigten Dateien auf den Zielrechner mitzugeben. Woher soll man aber wissen, welche Dateien das genau sind?
Oder macht man das mithilfe einer Installationsroutine? Da ist aber das Problem, dass das Erstellen so einer Installationsroutine in der Express-Version nicht unterstützt wird. Also auch keine Lösung?

Bei Code::Blocks z.B. ist es so einfach, ein Programm zu erstellen und weiterzugeben, nix mit irgendwelchen dlls oder so. Wo liegt der Sinn, dass das beim Visual Studio so kompliziert ist (oder für Anfänger so aussieht)?

Gibt es diese Probleme mit den dlls eigentlich nur bei Konsolenanwendungen, oder auch bei z.B. 2D- oder 3D-Spielen?
Wie löst ihr dieses Problem, also wie gebt ihr eure Programme weiter?

Gruß Sechem

P.S.: Ich habe lange genug danach gesucht, teilweise auch Antworten gefunden. Aber trotzdem ist mir das meiste noch nicht wirklich klar, vor allem da ich nichts gefunden habe, wo das übersichtlich und verständlich erklärt wird ;)

TrommlBomml

Community-Fossil

Beiträge: 2 117

Wohnort: Berlin

Beruf: Software-Entwickler

  • Private Nachricht senden

2

27.03.2009, 22:24

das einzige sind die so genanten CRT-libs. hier ist gut beschrieben was man machen muss, ist zwar für 2005 aber nur nen 08 ran dann passt das.

https://www.spieleprogrammierer.de/phpBB…opic.php?t=4926

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

3

27.03.2009, 22:58

Link einfach statisch. Ist das einfachste und geht problemlos bei allen Projekten, solange alle Libs auch auf mit MT erstellt wurden. Das mit der Wartbarkeit ist ein Argument was eig. nie eine Rolle für mich spielte und ich auch nie bemerkte. Alternativ muss jeder der dein Programm nutzt vorher die Runtime für msvc2008 installieren. Solltest du bei ms finden.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

4

27.03.2009, 23:00

Macht ihr das alle so, mit dem statischen Linken (also auch bei z.B. größeren 3D-Projekten)?
Ich hab halt keine Ahnung, was so die "Standard"-Vorgehensweise ist^^!

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

5

27.03.2009, 23:04

Also mein Projekt ist etwas größer und ja ich nutze nur das.
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

6

28.03.2009, 09:07

Jupp, ich setz auch auf statisches Linken.

7

28.03.2009, 19:26

Na gut, wenn das der "Standard" ist..
Finds halt komisch, dass das so umständlich ist, gerade als Anfänger ist es ja dann vorprogrammiert, dass man auf Probleme stößt.

Aber danke für die Hilfe!

Das Gurke

Community-Fossil

Beiträge: 1 996

Wohnort: Pinneberg

Beruf: Schüler

  • Private Nachricht senden

8

28.03.2009, 20:49

Nur um dir gleich mal den Zahn zu ziehen: Das die Express Editionen kostenlos sind heisst nicht, dass sie dafür gedacht sind Anfängern das Leben möglichst leicht zu machen. Es gibt dort nicht sowas wie einen "Anfängerschutz" der gewisse Probleme des Programmieralltags erstmal vor dir versteckt, weil er mekt, dass du gerade erst mit der Programmierung angefangen hast. Wer C++ lernt, wird sofort ins kalte Wasser geschmissen und lernt halt schwimmen oder säuft ab ;)

9

29.03.2009, 14:26

Zitat von »"Das Gurke"«

Wer C++ lernt, wird sofort ins kalte Wasser geschmissen und lernt halt schwimmen oder säuft ab ;)

ist wie bei den meisten (allen?) Programmierbüchern: zuerst ein listing, wo du gar nichts kapierst, und dann wird erklärt ;)

Werbeanzeige