Entwickler-Ecke
Sonstiges (.NET) - Kompatibilität Vista / XP
butzki - Mo 08.12.08 20:57
Titel: Kompatibilität Vista / XP
Hallo.
Ich habe eine Frage bzgl. eines kleinen Programmes, welches ich geschrieben habe.
Es soll eine kleine Anwendung für einen Kumpel sein. Dieses habe ich mit VS2008 geschrieben. Ich bekomme es auf meinem XP Notebook jedoch nicht zum Laufen und auch dem XP Rechner eines Freundes öffnet es sich nicht. Es kommt immer nur die Fehlermeldung, dass es geschlossen werden musste und ob man den Problembericht senden möchte.
Mein Betriebssystem, auf dem ich es programmiert habe, ist Vista Business 64 - die Zielrechner waren XP 32.
Als Ausgabeframework habe ich sowohl das 2.0er, als auch das 3.0 / 3.5er ausprobiert. Alle diese und 1.1 sind auf dem Notebook installiert. Ich verstehe nicht, wieso es nicht funktionieren soll, oder ist es einfach normal und ich habe vergessen, etwas Besonderes zu beachten?
Für Eure Hilfe bedanke ich mich bereits im Voraus. :)
Die verzweifelte Butze :/
jaenicke - Mo 08.12.08 21:04
Das sind oft immer die selben Fehler, die vielleicht gar nix mit dem Framework zu tun haben.
Der Fehler kann zum Beispiel auftreten, wenn du versuchst auf das eigene Verzeichnis zuzugreifen, weil du da INIs ablegst. Oder ähnliche Sachen.
Ich würde erstmal alles aus FormCreate etc. auskommentieren und schauen ob es dann immer noch passiert und wenn dann alles geht alles nacheinander wieder reinnehmen.
butzki - Mo 08.12.08 21:17
Danke für die schnelle Antwort.
Also das Programm ist wirklich super simpel. Es besteht nur aus einer *.exe Datei und kommt ohne *.dlls daher. Ich habe jetzt dennoch sämtlichen Code, der evtl. Probleme verursachen könnte herausgenommen und das Problem besteht nach wie vor.
Im Grunde genommen habe ich jetzt nur noch eine Windows Form, die mit 2 Buttons (der erste startet den Timer und der zweite hält ihn wieder an) und zwei numericupdowns ausgestattet ist.
Das müsste doch eigentlich auf jedem Rechner laufen, oder? Aber ich probiere es morgen mal an meinem Arbeitsrechner, auf dem ich mit VS2005 programmiere, aus. Wenn es dort auch nicht funktioniert, melde ich mich nochmal.
Gruß,
Butzki
jaenicke - Mo 08.12.08 21:20
Hmm, wenn beim Start gar kein Code mehr ausgeführt wird, dann wird es wohl wirklich am Framework liegen. Aber mit den dabei möglichen Problemen kenne ich mich nicht gut aus, deshalb kann ich dann leider nicht weiterhelfen.
Aber es sind hier ein paar andere mit mehr Erfahrung auf dem Gebiet unterwegs, da wird sicher auch noch jemand antworten ;-).
Ralf Jansen - Mo 08.12.08 23:37
Was hast du in deinem Project als Plattform Target angegeben? Wenn dort 'Any CPU' oder schlimmer 'x64' steht probier mal dieses auf 'x86' zu stellen um definitiv klar zu machen das auf dem Zielsystem die 32bit Version des Frameworks verwendet werden soll.
Wenn das keine weiteren Erkentnisse liefert könntest du wenn sich auf dem Zielsystem das Framework SDK das fuslogvw Tool benutzen. Dieses zeichnet auf welche Assemblies ein Executable versucht zu laden. Falls dir beim Programmstart irgendeine Abhängigkeit fehlt bekommst du es damit raus.
Kha - Mo 08.12.08 23:57
Ralf Jansen hat folgendes geschrieben : |
Wenn das keine weiteren Erkentnisse liefert könntest du wenn sich auf dem Zielsystem das Framework SDK das fuslogvw Tool benutzen. Dieses zeichnet auf welche Assemblies ein Executable versucht zu laden. Falls dir beim Programmstart irgendeine Abhängigkeit fehlt bekommst du es damit raus. |
Bevor wir die schweren Geschütze auffahren, sollten wir vielleicht erst einmal die Exception in Erfahrung bringen ;) .
butzki hat folgendes geschrieben : |
Es kommt immer nur die Fehlermeldung, dass es geschlossen werden musste und ob man den Problembericht senden möchte. |
Poste bitte einmal den Bericht, ansonsten können wir nur raten. Ich glaube, dort werden CLR-Exceptions auch direkt aufgeführt (wenn es denn nun wirklich Exceptions deines Programms sind und nicht das Framework selbst ist), ansonsten sollten sie auch in der Kommandozeile aufgeführt werden, wenn du das Programm von dort aus startest (nach Schließen der Fehlermeldung).
butzki - Mo 15.12.08 12:46
Sorry, dass ich so lange nichts mehr geschrieben habe, aber ich hatte leider keine Zeit.
Also erstmal zum Ergebnis auf dem Arbeitsrechner:
Das Programm lies sich auch dort nicht starten.
Da ich nicht weiter rumprobieren wollte, habe ich es via VM mit XP x86 und VS 2005 einfach neu geschrieben. Jetzt läuft es sowohl unter XP x86, als auch Vista x64.
Zum eigentlichen Problem:
Als Plattform Target hatte ich "Any CPU" eingestellt, ich werde es aber interessehalber zu Hause nochmal mit x86 probieren und für den Fall, dass die Fehlermeldung erneut auftritt, dann hier veröffentlichen. :)
Danke erstmal für die zahlreichen Antworten. :)
butzki - Fr 19.12.08 17:33
Hallo.
Ich habe das Problem gefunden, auch wenn ich es nicht ganz verstehe. Zuerst habe ich auf x86 umgestellt, mit dem selben Ergebnis.
Allerdings konnte ich jetzt den Fehler anhand des Debuggers finden ... es lag an dem Icon, welches ich dem Programm "mitgegeben" habe. Das Merkwürdige dabei ist, ich das ICON auch meinem Kumpel, der es bei sich auf Vista getestet hat, nicht mitgegeben habe. Scheinbar war Vista im Stande, diesen Fehler zu umgehen. Denn bei XP hat es hingegen immer gekracht.
Nun gut ... lag also wohl doch nicht am Framework. ;)
Trotzdem vielen Dank für die vielen Antwoten. :)
Gruß,
Butzki
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!