The system cannot execute the specified program?

pepsi_gx

Erfahrenes Mitglied
Guten Tag,

ein Programm habe ich in VC++ geschrieben und die kopilierte .exe-Datei funktioniert gut auf meinem PC.

Aber wenn ich sie auf nem anderen PC teste, kann sie nicht ausgeführt werden mit der Warnung "The system cannot execute the specified program".

Nach Googeln kann es wahrscheinlich am Fehlen der "Run time Library" von C/C++ liegen. Microsoft bietet eine Visual C++ 2008 Package dafür an.

Gibts vielleicht noch anderen Weg, die .exe-Datei auf anderem PC ausführen zu lassen?

PS: WinXP mit SP3 habe ich.

LG
 
Zuletzt bearbeitet:
Hi.

Du könntest die Laufzeitbibliothek statisch mit zum Programm linken.

Ändere in den Projekteinstellungen bei C/C++ -> Codegenerierung die zu verwendende Laufzeitbibliothek von "Multithreaded-DLL" bzw. "Multithreaded-Debug-DLL" auf "Multithreaded" bzw. "Multithreaded-Debug" für das Release respektive Debug-Target.

Dann mußt du alles nochmal neu erstellen.

Gruß
 
Hi.

Du könntest die Laufzeitbibliothek statisch mit zum Programm linken.

Ändere in den Projekteinstellungen bei C/C++ -> Codegenerierung die zu verwendende Laufzeitbibliothek von "Multithreaded-DLL" bzw. "Multithreaded-Debug-DLL" auf "Multithreaded" bzw. "Multithreaded-Debug" für das Release respektive Debug-Target.

Dann mußt du alles nochmal neu erstellen.

Gruß

Danke, das habe ich ausprobiert, aber Fehlermeldung:
C++:
Error	1	Command line error D8016 : '/MTd' and '/clr' command-line options are incompatible
 
Hi.

Schreibst du denn ein Programm für die .NET Common Language Runtime?

Wenn nicht, dann schalte die Common Language Runtime Unterstützung ab (in den Projekteigenschaften unter Allgemein)

Gruß
 
Hi.

Schreibst du denn ein Programm für die .NET Common Language Runtime?

Wenn nicht, dann schalte die Common Language Runtime Unterstützung ab (in den Projekteigenschaften unter Allgemein)

Gruß

CLR ist aktiv, und wenn ich sie deaktiviere, kommen Fehlermeldungen:
C++:
Error	2	error BK1506 : cannot open file '.\Debug\xxx.sbr': No such file or directory	BSCMAKE
Error	1	fatal error C1189: #error :  Please use the /MD switch for _AFXDLL builds	C:\Program Files\Microsoft Visual Studio 9.0\VC\atlmfc\include\afxver_.h	81

Noch ne Idee?
 
Wenn du ATL nicht verwendest, schalte es ab.

\edit: wenn du ATL doch verwendest, wähle dort die statische Variante aus.

Gruß
 
Zuletzt bearbeitet:
Komisch ist, nach meinem Verständnis sollte eine .exe-Datei plattformunabhängig sein, oder? Aber anscheinend braucht sie trotzdem noch welche DLLs zum Ausführen.

Eine andere Möglichkeit wäre, daß ich eine .msi Install-Datei aus den nötigen DLLs und
der .exe-Datei vorbereite. Frage ist, wie?

Nach Internetrecherche habe ich ein Opensource Tool dafür gefunden. Da die Anleitung eher allgemein scheint, wie soll ich in meiner Situation machen? (Mit DLLs und .exe-Datei)

http://www.dalun.com/wix/01.09.2005.htm

Schönen Feiertag noch!
 
Komisch ist, nach meinem Verständnis sollte eine .exe-Datei plattformunabhängig sein, oder? Aber anscheinend braucht sie trotzdem noch welche DLLs zum Ausführen.
Dein Verständnis ist mangelhaft ;)
Eine andere Möglichkeit wäre, daß ich eine .msi Install-Datei aus den nötigen DLLs und
der .exe-Datei vorbereite. Frage ist, wie?
Indem du ein Setup-Projekt erstellst.

Und warum erstellst du kein statisch gelinktes Programm wie vorgeschlagen?

Gruß
 
Dein Verständnis ist mangelhaft ;)
Sollte ich mich vielleicht schämen? :-(

Indem du ein Setup-Projekt erstellst.
Meinst du direkt durch VC++? Wenn ja, eine kurze Anleitung wäre mir geholfen.

Und warum erstellst du kein statisch gelinktes Programm wie vorgeschlagen?
Das will ich auf jeden Fall auch probieren. Daher habe ich die Setup-Datei als "eine andere Möglichkeit" genannt und finde die eher profesionell zu scheinen.
 
Zurück