Anwendung konnte nicht richtig initialisiert werden ...



  • ...(0xc0000142)

    EDIT: Ich würde diesen Fehler gerne lösen, allerdings muss ich mich jetzt auf etwas anderes konzentrieren, denn die Hauptsache ist, dass das Programm am Testrechner läuft, und das tut es. Es würd mich freuen, wenn noch einige Vorschläge kommen, allerdings komme ich nicht so schnell zum Antworten.
    Bitte um Verständnis. Gruß und danke. EDITaus

    Hallo,

    ich bin neu hier und beim Durchstöbern habe ich nicht die gleiche Problematik gefunden, sollte es irgendwo stehen, reicht natürlich auch ein Link dorthin.

    Ich arbeite an einem größeren Projekt hier, dass sich mit dem Ein- und Auslesen von einer I/O Karte beschäftigt. Zusätzlich wird die gesamte Hardware-Kommunikation von einer entsprechenden DLL erledigt.

    Das Problem ist nun folgendes. Ich arbeite an 2 Rechnern, der eine ist der tatsächliche Testrechner, der die I/O Karte besitzt, und der andere ist mein Arbeitsrechner. Das heißt, ich schreibe einen Codeabschnitt, bringe dann das Programm rüber und starte es dort.

    Jetzt wo das Programm einwandfrei läuft und ich eine kleine Aänderung an TESTrechner gemacht habe, wollte ich es auf meinem Arbeitrechner starten (per .exe) und dann kommt mir die oben beschriebene Meldung.

    Wenn ich das .groupproject mit RAD Studio 2007 öffne und kompiliere, geht es, aber auch wenn ich neu speichere, ist die .exe (auf diesem Rechner) nutzlos.

    Ich benutzte RAD studio 2007 von CodeGear und habe Windows2000 auf dem Rechner, auf dem es nicht läuft.
    Wie gesagt, es lief reibungslos bis jetzt.Da es nach dem Kompilieren läuft, denke ich nicht, dass es am Code liegt, sondern an irgendeiner Kleinigkeit. Lass mich aber gerne eines Besseren belehren.

    Meine Frage ist also: Woran kann das liegen, wonach kann ich suchen?
    Ich kann auch gerne Codeabschnitte Posten, wusste gerade nicht welche helfen könnten.

    Es sei hier gesagt, dass eher neu in der Materie bin und an einem größtenteils schon bestehenden Programm gearbeitet habe. Beschreibungen also bitte möglichst präzise.

    Danke für die Mühe.

    Gruß
    Jeronimus



  • jeronimus schrieb:

    Jetzt wo das Programm einwandfrei läuft und ich eine kleine Aänderung an TESTrechner gemacht habe, wollte ich es auf meinem Arbeitrechner starten (per .exe) und dann kommt mir die oben beschriebene Meldung.

    Du hast eine Änderung am Testrechner durchgeführt, und nun läuft die Applikation nicht mehr auf deinem Arbeitsrechner? Das klingt doch etwas seltsam. Denn wenn diese nicht irgendwie in Beziehung zu einander stehen, können sie sich wohl kaum gegenseitig beeinflussen.

    jeronimus schrieb:

    Wenn ich das .groupproject mit RAD Studio 2007 öffne und kompiliere, geht es, aber auch wenn ich neu speichere, ist die .exe (auf diesem Rechner) nutzlos.

    Ich bin mir nicht sicher ob ich dich komplett verstanden habe. Du kannst dein Programm kompiliren, aber nicht starten? Ich habe zwar noch nie mit dem RAD Studio 2007 gearbeitet, aber ich denke mal dass dieser bestimmt über einen integrierten Debugger verfügt. Was passiert also, wenn du beginnst das Projekt zu debuggen? Kommst du bis zur ersten Programmzeile oder stürzt es schon zuvor ab? Letzteres kann ich nur vermuten anhand deiner Fehlermeldung.
    Alles in allem hört es sich nach einer Speicherverletzung an. Vielleicht irgendwo einen ungültigen Zeiger dereferenziert? Wenn die Applikation vor dem Enstieg in main() abstürzt, wären vielleicht die Konstruktoren von allen global deklarierten Klassen einen näheren Blick wert.



  • Hi danke erstmal,

    Du hast eine Änderung am Testrechner durchgeführt, und nun läuft die Applikation nicht mehr auf deinem Arbeitsrechner? Das klingt doch etwas seltsam. Denn wenn diese nicht irgendwie in Beziehung zu einander stehen, können sie sich wohl kaum gegenseitig beeinflussen.

    Richtig, das ist genau das Problem. 2 völlig voneinander getrennte PCs. zwar nicht exakt gleich (zb hat Testrechner XP) allerdings war das bis zum letzten Versuch kein Problem. Es gibt auch ältere Codeversionen von kurz davor, mit kaum Änderung, die funktionieren noch.

    Ich bin mir nicht sicher ob ich dich komplett verstanden habe. Du kannst dein Programm kompiliren, aber nicht starten?

    genau so ist es. Hätte ich einen Fehler beim Kompilieren, wüsst ich wenigstens grob wo ich suchen soll, aber so ...
    ich kompiliere kann debuggen wie ich will, klappt alles (zumindest nach Außen hin) ... alles speichern, aber sobald ich die .exe anklicke hab ich wieder die Fehlermeldung.

    Mein Problem ist quasi, dass ich nicht weiß, wie ich strategisch rangehen soll. Kann ich irgendwelche txt-Dateien rausziehen, die ich vergleichen könnte mit denen der funktionierenden Codes?

    Alles in allem hört es sich nach einer Speicherverletzung an. Vielleicht irgendwo einen ungültigen Zeiger dereferenziert?

    müsste der dann nicht vorher motzen? Weil Zugriffsverletzungen wären jetzt nichts neues.



  • jeronimus schrieb:

    Mein Problem ist quasi, dass ich nicht weiß, wie ich strategisch rangehen soll. Kann ich irgendwelche txt-Dateien rausziehen, die ich
    vergleichen könnte mit denen der funktionierenden Codes?

    welche funktionierenden Codes?

    Alles in allem hört es sich nach einer Speicherverletzung an. Vielleicht irgendwo einen ungültigen Zeiger dereferenziert?

    jeronimus schrieb:

    müsste der dann nicht vorher motzen? Weil Zugriffsverletzungen wären jetzt nichts neues.

    Nicht unbedingt. Weder der Compiler, noch der Linker kann solche Fehler zuverlässig erkennen. Auch möglich, dass es in der Debugversion funktioniert, und ohne Debuginformationen nicht. Falscher Umgang mit Zeigern können vielerelei Auswirkungen haben, auch welche die man im ersten Moment nicht nachvollziehen kann. Die Tatsache dass du geschrieben hast, das es auf einmal nicht mehr geht lässt mich nur was in der Richtung vermuten.
    Ein möglicher Ansatz wäre auch ein paar der letzten Sicherungsstände rauszuholen und zu testen, um zu sehen, ob sich hierdurch der Fehler ein wenig eingrenzen lässt.



  • eronimus schrieb:
    Mein Problem ist quasi, dass ich nicht weiß, wie ich strategisch rangehen soll. Kann ich irgendwelche txt-Dateien rausziehen, die ich
    vergleichen könnte mit denen der funktionierenden Codes?
    welche funktionierenden Codes?

    ich meinte Sicherungsstände.

    ich werd mir das mal anschauen. Ich frag mich einfach, wie es kommt, dass es der einzige Rechner ist, der die .exe nicht ausführen möchte.
    Hab es an einem weiteren nämlich auch grad ausprobiert. Vllt doch eine Windows Versionssache?!

    Ich danke dir auf jeden Fall.



  • Hast du die Readme gelesen?

    Versuche mal, deine Anwendung statisch zu linken.



  • werd ich mir gleich mal ansehen.
    Wie man statisch linkt ... tja da hören die Fähigkeiten auf. wenns schnell erklärt ist oder du nen Link hast gerne Posten.



  • jeronimus schrieb:

    Wie man statisch linkt ... tja da hören die Fähigkeiten auf. wenns schnell erklärt ist oder du nen Link hast gerne Posten.

    Erster FAQ-Eintrag im C++Builder-Subforum 😉


Anmelden zum Antworten