[C++] exe Datei auch auf anderen Rechnern

Shonn

Ref-Jäger
ID: 127902
L
5 Mai 2006
584
16
Einen schönen Guten Abend,

leider bin ich am verzweifeln...da meine exe Datei, die ich mit VC2005 erstellt habe auf anderen Computern einfach nicht läuft. Ebenfalls wurde das ganze Net nach dem Problem durch forstet und dennoch gab es keine Lösung dazu... .
Sobald ich anfange Multithreading an zu klicken oder MFC als statisch an zu geben bekomme ich ständig fehler wie z.B. diese hier:

libcpmtd.lib(xdebug.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__malloc_dbg" in Funktion ""void * __cdecl operator new(unsigned int,struct std::_DebugHeapTag_t const &,char *,int)" (??2@YAPAXIABU_DebugHeapTag_t@std@@PADH@Z)".
libcpmtd.lib(xdebug.obj) : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "__free_dbg" in Funktion ""void __cdecl operator delete(void *,struct std::_DebugHeapTag_t const &,char *,int)" (??3@YAXPAXABU_DebugHeapTag_t@std@@PADH@Z)".



Hat jemand eine Idee, wie man dieses Problem lösen kann?


Mit freundlichen Grüßen und einem Dank von
Shonn
 
Zuletzt bearbeitet:
Was heißt "nicht läuft"? Kannst du jetzt die Anwendung woanders nicht starten oder übersetzt es einfach nur nicht?

Die geposteten Fehlermeldungen sind Linkermeldungen, die ein nicht aufgelöstes Symbol anzeigen. Es scheinen da Debug-Bibliotheken zu fehlen. Versuch doch einfach mal, keinen Debug-Code zu erstellen, dann müssten die Meldungen erstmal verschwinden.

Danach solltest du dich umsehen, wo die besagte Bibliothek ist und sie in das richtige Verzeichnis stecken. Dann kannst du auch wieder Debug-Code produzieren.
 
Also es geht darum meine Anwendung auch auf anderen Computern zu starten.

Das Programm funktioniert einwandfrei auf meinem Computer, wo auch VC2005 installiert ist, aber auf anderen Computern funktioniert das Programm nicht, da steht immer eine Fehlermeldung. Und ich möchte keine Bibliotheken auf anderen Computern extra installieren... .

Dieser Fehler oben kommt davon das ich MFC Bibliotheken auf statisch gesetzt habe und es jetzt Fehler anzeigt!
 
Der andere PC braucht die notwendige .NET Framework-Software,um dein Programm ausführen zu können.
Für Linux gibt es Mono.

Wenn du deinen Quellcode zeigst,dann können wir dir vielleicht mit deinem Problem helfen
.
Hast du alle Header/libs korrekt included/importiert?
 
Klar,man kann mit VC++ 2005 auch mit WIN API programmieren.
Wenn du plattformunabhängig programmieren willst ist Java auch eine gute Wahl.
 
Verwendet C++ denn tatsächlich .NET? Ich hatte immer gedacht C++ wäre nach wie vor unabhängig von .NET.

@Threadsteller:
Hast du das Kompilat als Release- oder als Debug-Version erstellt. Ist letzteres der Fall muss der Zielrechner auch die MFC-Debug-Bibliotheken installiert haben.
 
Mach es per Release und danach sollte es auf dem Ziel - PC funktionieren ( mit .NET Framework ).