Hilfe - Fertige Exe lässt sich nicht ausführen
-
Ich habe hier mit Visual Studio 2005 unter Vista eine SlideShow programmiert. Am Schluss von Debug auf Release umgestellt und fertig ... dachte ich.
Auf meinem Rechner kann ich die Exe ausführen, auf anderen PCs lässt sie sich nicht ausführen.
Ein früheres Programm, dass ich vor einem halben Jahr (damals noch mit WinXP und VS 2005) programmierte, lief auf einem XP-Notebook mit installiertem .NET-Framework 2.0.Ich verstehe nicht, warum das jetzige Programm nicht läuft. Benötigt es, weil es unter Vista programmiert wurde, nun etwa .NET-Framework 3.0 und funktioniert somit nur unter Vista?
Wie kann ich feststellen, warum sich eine Exe nicht ausführen lässt.
Die Meldung war in ungefähr, dass die Anwendungskonfiguration nicht korrekt sei.
-
Versuch mal die Laufzeitbibliotheken von DLL auf statisch zu stellen. Falls du es noch nicht getan hast. Der Fehler sollte nicht mit .NET Runtime zu tun haben.
-
Hm ok, werde ich morgen ausprobieren. Das "Testsystem-Notebook" ist bei meiner Freundin und die schläft inzwischen schon

Habe in den Konfigurationseigenschaften auch gesehen, dass unter CLR-Unterstützung /clr:pure eingetragen ist. Dsa ist doch bestimmt auch nicht unbedingt positiv, oder?
Ich kenne mich damit leider absolut nicht aus; bin schon froh, dass mein Programm wenigstens in VC läuft

-
/CLR:PURE bedeutet:
http://msdn2.microsoft.com/en-us/library/k8d11d4s(VS.80).aspxProduces an MSIL-only output file with no native executable code, although it can contain native types compiled to MSIL.
D.h. dieser Code benötigt zwingend die entsprechende .NET Runtime!
Schalte den CLR Support ab.
-
Umschalten auf statisch über Konfigurationseinstellungen/Verwendung von MFC?
Schalte ich den CLR-Support ab, läuft meine Fenster-Anwendung logischerweise nicht mehr.
Bei meinem damaligen Projekt an der Uni habe ich das auch benutzt und da lief das Programm, nachdem man das .Net-Framework 2.0 installierte.
Mein jetziges Programm tut dies aber leider nicht mehr.
Habe damals, genau wie jetzt, nichts an den Standardeinstellungen verändert. Deshalb schiebe ich es ja auch auf Vista..
-
magifrei schrieb:
Schalte ich den CLR-Support ab, läuft meine Fenster-Anwendung logischerweise nicht mehr.
Was ist daran logisch?
Dann hast Du eine Applikation erstellt, die die .NET Runtime benötigt. Dann musst Du diese auch installieren.
-
Ich habe zu Beginn doch ein CLR-Projekt erstellt, um eine WindowsForms-Anwendung zu erhalten. Schalte ich nun in den Konfigurationseigenschaften des Projektes die CLR-Unterstützung ab, lässt sich mein Projekt nicht mehr kompilieren

Ach so *peil*
Na klar habe ich eine CLR-Anwenudng programmiert.Die Sache ist nur Folgende:
Damals an der Uni bin ich genauso vorgegangen wie jetzt. Mein Projekt ließ sich damals auch nur auf fremden Rechner starten, wenn dort das .NET-Framework 2.0 installiert wurde. Das wäre ja auch ok.
Mein jetziges Projekt lässt sich leider auf Rechnern mit .NET-Framework 2.0 nicht starten (habs zwar nur auf dem Notebook meiner Freudnin probiert; aber da läuft mein damaliges Uni-Projekt).
-
Und für wleches FRamework hast Du diese Applikation erzeugt? .NET 2.0 oder 3.0?
Was passiert, denn wenn Du die Anwendung lädst?
-
Wo kann ich das nachschauen, für welches Framework Code erzeugt werden soll?
Was genau jetzt gesagt wurde, kann ich momentan nicht sagen, weil ich hier gerade keinen Zweitrechner habe.
Habe ja auch mit allen möglichen Einstellungen mal kompiliert.
Von "die Anwendungskonfiguration sei nicht korrekt" bis "gar keine Meldung" war aber glaube ich alles dabei.Nachtrag: "Path can not be found" war auch dabei, wie ich meien ICQ-Logs entnehmen kann.

Aber wie gesagt, alles bei unterschiedlichen Einstellungen. Mal auf clr, mal auf clr:pure, mal mit (hoffentlich) statischen DLLs.
-
Meine momentanen Einstellungen lauten:
Verwendung von MFC: Windows-Standardbibliotheken verwenden
CLR-Runtime Unterstützung: Reine MSIL Common Language Runtime-Unterstützung (/clr:pure)und unter Codegenerierung findet sich noch folgendes zu den Bibliotheken:
Laufzeitbibliothek: Multithreaded-Debug-DLL (/MDd)
Auf Systemen ohne .Net-Framework lautet die Meldung: die Anwendungskonfiguration ist nicht korrekt.
Ich erweiter diesen Beitrag nachher, wenn ich das Notebook mit .NET-Framework 2.0 habe.
Nachtrag: Wie ich feststellen muss, ist auf dem Notebook hier sogar das .Net-Framework 3.0 installiert; und es läuft trotzdem nicht

Die Meldung hier lautet:Auf das angegebene Gerät, bzw. den Pfad oder die Datei kann nicht zugegriffen werden. Sie verfügen eventuell nicht über ausreichende Berechtigungen, um auf das Element zugreifen zu können.
-
Ich geb's auf.
Würde mir jemand eine lauffähige Exe erstellen? Ich schicke demjenigen gerne mein VS8.0-Projekt, bzw. aufgrund der Größe die einzelnen Quellcode-Daten (sind nur zwei Formulare, geht also schnell) und das Icon.
-
So wie es aussieht, lag es tatsächlich an Vista (oder mein VS ist kaputt).
Ich habe jetzt auf einem Windows2000 Notebook VS 8.0 installiert, mein Projekt dort geöffnet und kopiliert. Das Ergebnis lässt sich nun auf jedem Rechner mit installiertem .NET-Framework ausführen.
Ist jemand hier, dessen VS unter Vista läuft?