Programm ausführen

hallo zusammen

was für dll’s und/oder andere dateien brauche ich, dass ein c++programm auf einem anderen (windows)pc läuft, auf dem c++ nicht installiert ist? gibt es da irgend einen assistenten (so wie in VB), welcher einem die erforderlichen dateien
„zusammenbindet“?

danke für eure hilfe!

marcel

Hi,

was für dll’s und/oder andere dateien brauche ich, dass ein
c++programm auf einem anderen (windows)pc läuft, auf dem c++
nicht installiert ist?

Im zweifelsfall statisch linken, das Prog wird dann zwar groesser, ist aber nicht auf DLLs angewiesen.

Gruss

Thorsten

Hallo Marcel,

kommt darauf an, ob Du spezielle Bibliotheken verwendest, z.B.
die MFC.

Gruß Patrick

hallo Patrick

ja es ist ein MFC programm.
was brauche ich alles?

danke und gruss
marcel

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

hallo thorsten

danke für deinen tipp, aber wie funktioniert das genau?
was muss ich tun?

danke und gruss
marcel

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi,

was für dll’s und/oder andere dateien brauche ich, dass ein
c++programm auf einem anderen (windows)pc läuft, auf dem c++
nicht installiert ist?

Im zweifelsfall statisch linken, das Prog wird dann zwar
groesser, ist aber nicht auf DLLs angewiesen.

danke für deinen tipp, aber wie funktioniert das genau?
was muss ich tun?

Schau mal im Archiv, da war neulich schonmal eine Anfrage dazu, was dynamisch/statisch linken heisst.
In Kurzform: bei dynamischem linken wird binaer-code erst bei Starten des Programmes aus DLLs (dynamicly linked libraries) geladen, beim statischen enthaelt das Programm (die .exe) alles was es braucht - ist aber evtl deutlich groesser. In DLLs befinden sich meist Funktionen, die von sehr vielen Programmen benutzt werden.
Wie Du Deinen Linker (ist ein „Teil“ des Compilers) zum statischen Linken ueberredest haengt vom Compiler ab. Da muss es irgendeine Option geben. Liess es in der Doku Deines Compilers nach. Meist ist das allerdings nicht noetig, da die wichtigstens DLLs auf den meisten Rechnern vorhanden sind. MFC ist meine ich eine Microsoft Lib zur Programmierung grafischer User Interfaces (ich arbeite mit Linux, bdaher kenn ich mich mit Win nur begrenzt aus).

Gruss

Thorsten

Hallo Marcel,

wie Thorsten geschrieben hat, kann man im Zweifelsfall statisch linken. Bei einer MFC Applikation frägt der Assistent beim Anlegen eines neuen Projektes, wie man die MFC Bibliotheken linken möchte.
Möchte man das nachträglich ändern: Alt + F7
um in die Projekteinstellungen zu gelangen und dann unter
Reiter Allgemein „MFC als statisch gelinkte Bibliothek“ auswählen. Ob das schon reicht, weiß ich auf die Schnelle nicht.

Ein MFC Programm binden normalerweise eine oder mehrere der folgenden DLLs ein (Konfiguration: Debug) :

mfc42d.dll MFC core
mfco42.dll OLE Klassen
mfcd42.dll Datenbanken
mfcn42.dll Winsock, WinInet

Gruß Patrick

Vielen Dank für Eure Hilfe, es hat funktioniert!!
.