Programm läuft nicht auf jedem PC korrekt

  • Allgemein

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von Kangaroo.

    Programm läuft nicht auf jedem PC korrekt

    Hallo,
    Ich habe ein sehr komplexes Programm gebastelt, das jedoch nicht auf jedem PC korrekt läuft. Auf jedem PC passieren andere Fehler, nur auf meinem läuft alles rund. Das liegt wohl an der Komplexheit des Programms und den Fehlern die sich eingeschlichen haben ^^ Aber auf meinem PC läuft ja alles rund.
    Kann man das Programm irgendwie so compilieren, dass solche Fehler ausgeschlossen werden ? Also dass sämtliche Einstellungen von meinem System eingespeichert werden, dass das Programm fehlerlos läuft ?
    Oder was gibt es für Möglichkeiten, dass das Programm auch auf fremden PC's genau so läuft wie auf meinem (bisher hatten die anderen PC's genau mein Betriebssystem und .NET framework 4).

    juli90 schrieb:

    Oder was gibt es für Möglichkeiten, dass das Programm auch auf fremden PC's genau so läuft wie auf meinem

    Haufenweise, sorry ...

    Am Wichtigsten ist es, dass Du in Deinem Programm nur gezielt die Fehler abfängst die Du wirklich abfangen willst, also nix àla Try...Catch ex as Exception wo Du nirgends einen Hinweis bekommst was jetzt wirklich in die Hose gegangen bist.

    Was mir weiter dazu einfällt:
    - Permissions , gerade bei eingeschränkten Useraccounts (Windows 7)
    - notwendige Files / Libraries mitgegeben !!
    - andere Ordnerstrukturen, Environment.Directories benutzt ?

    Wenn Du Fehler auf anderen PC's bekommst, so poste sie , dann sind wir / Du schlauer ...
    Danke für die schnelle Antwort
    Ich fange überall da Fehler ab, wo welche passieren können, und lasse dann auch den Fehler in einer Messagebox ausgeben.
    Ich habe die benötigten Dateien direkt auf "C:\programmname" kopiert, also auf einem festen Pfad, dann kann sich da schonmal kein Fehler einschleichen.
    Ich habe jetzt schon auf 3 PC's getestet, 2 davon mit Windows 7 Ultimate x64, und 1 Windows 7 Home Premium x32,
    die Fehler waren:
    - Das Programm lässt sich nicht starten, da irgendwelche dll's (welche aber wirklich im richtigen Ordner sind und auch die richtige Version und so) nicht gefunden werden würden, auch nach mehrfach neu installieren ging nichts, auf den anderen PC's läufts jedoch schon.
    - Manche dll's spielen komplett zurück und liefern mir nurnoch Fehler-messageboxen und liefern falsche ergebnisse (müssen aus Text etwas auslesen), danach ist das Programm abgestürzt
    - Das Programm benutzt FFmpeg.exe (konvertiert Videos), welche jedoch auch nicht läuft, es werden nichtmal irgendwelche Dateien ausgegeben, verschiedene Versionen helfen da auch nichts. Auf meinem PC läuft jedoch komischerweise alles tadellos.

    Das sind erstmal die Fehler die mir spontan eingefallen sind.
    also auf einem festen Pfad, dann kann sich da schonmal kein Fehler einschleichen.

    Genau deswegen können sich Fehler einschleichen.
    Mach die feste Pfadangabe mal weg, und erstell den Pfad "dynamisch". (Also zuerst das Systemlaufwerk des PCs auslesen, es gibt auch Leute, bei denen das nicht C ist)
    Außerdem braucht man unter Vista/7 m.W. Adminrechte, um direkt auf C:\ zu schreiben.

    Samus Aran schrieb:

    also auf einem festen Pfad, dann kann sich da schonmal kein Fehler einschleichen.

    Genau deswegen können sich Fehler einschleichen.
    Mach die feste Pfadangabe mal weg, und erstell den Pfad "dynamisch". (Also zuerst das Systemlaufwerk des PCs auslesen, es gibt auch Leute, bei denen das nicht C ist)
    Außerdem braucht man unter Vista/7 m.W. Adminrechte, um direkt auf C:\ zu schreiben.
    Stimmt.

    Du solltest mit

    VB.NET-Quellcode

    1. Environment.Getfolderpath
    etc arbeiten.
    hmm, dann wäre da noch die Frage für was für ein System Deine DLL's und Dein Programm kompiliert wurden. Eine Int32 ist 32bittig sowohl auf einem 32bit OS als auch einem 64bit OS, aber bei dem hundsgewöhnlichen Integer bin ich mir schon nicht mehr sicher.

    Ich benutze halt immer noch 32bit OS (Xp , Win 7), kann da also nicht mitreden. Wenn es aber Unterschiede gibt wäre es wohl sinnvoll sowohl die DLL's als auch das Programm einheitlich auf 32bit zu kompilieren.

    Kann da jemand weiterhelfen ?