Forum: PC-Programmierung MFC: Programm mit grafischer Ausgabe: Probleme unter Win XP


von Christian R. (supachris)


Lesenswert?

Hallo Leute,

ein seltsames Problem hier: Wir haben eine etwas ältere Software, mit 
MFC geschrieben, noch unter Visual Studio 6. Die Software spricht unsere 
PCI-Karten an, die Ultraschallmessungen machen. Die Daten werden 
visualisiert (sehr rudimentäre Ausgabe mit LineTo() usw.)

Unter Windows 2000 ist alles OK, Wiederholrate der Anzeige spielt keine 
Rolle, Programm läuft seit Jahren fehlerfrei.

Nur bei XP gehts los: Wenn man an der Maus wackelt, über den 
Dialogboxen, die die Anzeige beinhalten, dann dauert es einige Sekunden, 
und die Anzeige bleibt stehn. Die Messung, also der Rest des Programmes 
im Hintergrund läuft weiter. Nur wir die Anzeige nicht mehr 
aktualisiert. Klickt man gar auf eine Titelleiste des Anzeigefensters, 
friert die Anzeige sofort ein. Es kommt keine Fehlermeldung, einfach 
keine Aktualisierung mehr, und das Programm läuft im Hintergrund normal 
weiter.

Je schneller man die Anzeigefenster aktualisieren will, desto schneller 
schmiert die Anzeige ab.

Was ist denn da gegenüber dem Windows 2000 anders? Liegt es am 
geänderten Scheduler-Intervall? Hat jemand schon mal sowas gehabt?

Danke im Voraus.

von Arc N. (arc)


Lesenswert?

Läuft die Anwendung, wenn Kompatibilitätseinstellungen verwendet werden?
Wie sieht's mit der Freigabe von GDI-Objekten aus?

von Christian R. (supachris)


Lesenswert?

Beim Schreiben des Beitrags fiel mir der Kompatibilitätsmodus auch ein. 
Und ja: Da läufts! Komisch.

von Christian R. (supachris)


Lesenswert?

Wobei sich die Frage stellt: Was ist da anders? Wieso schmiert das unter 
XP ab? Weiß das jemand? Der Kompatibilitätsmodus ist ja keine dauerhafte 
Lösung.

von Samuel S. (samstre)


Lesenswert?

Visual Studio 6 hat die Version 6.0 (mfc42.dll) von MFC mit dabei und 
Visual Studio 2005 hat die Version 8.0 (mfc80.dll)...

Wenn der Sourcecode verfügbar ist, würde ich einfach das ganze Projekt 
nochmal neu kompilieren (mit ner neueren Version von Visual Studio). 
Ansonsten könnte man unter umständen die alte dll von mfc verwenden...

^^
Ich weiß zwar im moment nicht genau, wie das geht (ich glaub, man 
kopiert die dll einfach in das Programmverzeichniss), aber das lässt 
sich sicher irgendwo herausfinden... (msdn?)

Ansonsten ist eigendlich gegnen den Kompatibilitätsmodus nichts 
einzuwenden... der wird warscheinlich auch nicht viel was anderes machen 
;)

lg samstre


hmmm... obwohl xp sollte eigendlich auch die mfc42.dll mitbringen?!?! 
ich würds einfach nochmal kompilieren?!?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.