UpdateData --> Absturz??



  • Hallo,

    was für Gründe kann es geben dass ein Programm beim Aufruf von

    UpdateData(FALSE)
    

    abstürzt? Der Aufruf erfolgt in einer Funktion die von einem Thread aufgerufen wird. Wenn ich dieses UpdateData weglasse funktionert alles bestens.

    Gruß,
    Michel



  • Ich glaube, du musst mehr Code posten. Wenn du in den Debugmodus gehst, kannst du auch auf die Codezeile der MFC kommen, in der es hakt. Da steht dann vielleicht so was wie ASSERT(IsWindowVisible(........)), also, du willst etwas in ein Fenster laden, wobei das Fenster noch gar nicht soweit ist. Ich lehne mich grad ein bißchen aus dem Fenster, vielleicht besser du gibtst uns noch mehr Stoff zum Nachdenken.



  • In eine Thread funktioneirt UpdateData nicht.
    Andere Lösung suchen.



  • Hallo,

    das mit dem Thread hab ich mir schon fast gedacht.
    Gibts da keine "Patent-Lösung"? Den Inhalt des Dialogs über einen Timer "upzudaten" der gestartet wird bevor man mit dem Thread anfängt ist doch auch nicht das Wahre. Auf die Schnelle würde mir nix anderen einfallen.

    Gruß,
    Michel



  • starte mal im debug modus und schau dir die absturzzeile an

    da sollte n kommentar von microsoft stehen inkl. lösungsvorschlag



  • Du könntes dem Dialog eine Nachricht senden das er sich jetzt updaten soll.
    Oder du schreibst vom Thread aus in die Steuerelemente



  • @Sovok: Hab ich schon gemacht, da stand leider nix an Kommentaren. Kann jetzt leider nicht an den Rechner auf dem ich das Programm hab, es war aber eine Prüfung ob der Zeiger aufs Dialogfenster gültig ist, wenn ich mich nicht irre in der Klasse CDataExchange oder so ähnlich.
    @Unix-Tom: Das mit der Nachricht werde ich heute abend mal austesten, aber wie meinst Du das "vom Thread aus in die Steuerelemente schreiben"?

    Gruß,
    Michel


Anmelden zum Antworten