Fenster "fliegen"



  • Kennt jemand das Problem vom InternetExplorer, das seit Version 1 existiert ? Wenn man eine bestimmte Zahl von Clients (Fenster) geöffnet hat (und wieder geschlossen), fangen irgendwann die Fenster in Windows zu "fliegen" an und werden völlig chaotisch dargestellt. Egal, welche IExplore-Version, egal, welche Windows-Version. Erst wenn es irgendwie gelingt, den iexplore-Prozess zu killen, ist wieder alles in Ordnung. Ich habe dieses Problem ebenfalls in meiner Anwendung, wo nach und nach ein neues Fenster (CreateWindow) erzeugt, und wieder destroyed wird. Speicherüberlauf ? Ich habe schon die WM_PAINT-Funktionen komplett entfernt, hat auch nichts genutzt. Auch wenn selbst MS keine Lösung bis dato gefunden hat, kennt jemand eine Lösung dafür ?



  • x-bay schrieb:

    Kennt jemand das Problem vom InternetExplorer, das seit Version 1 existiert?

    Ne, ich ehrlich gesagt nicht. Vielleicht hast du Drogen genommen?



  • Was soll die destruktive Antwort ? Ich kann diesen Effekt unzählig Male nachstellen, auf jeglichen Windows-Computer, unter jeglicher Windows-Version, unter jeglicher Iexplore-Version. Auch auf Deinem PC, ohne Extasy.



  • Dann erklär mal genau wie es geht - dann könnten wir es auch mal ausprobieren 🙄
    Evtl. gibst du irgendwelche Ressourcen nicht richtig frei 😕



  • Also, mir passiert das ziemlich oft, wenn ich im Internet surfe. Ich bin es gewohnt, Links stets mit SHIFT-Klick zu öffnen, wodurch ein neues Browser-Fenster erzeugt wird. Obwohl ich diese neuen Fenster stets wieder schliesse (bis auf eines), tritt der besagte Effekt stets nach einer bestimmten Anzahl von geöffneten und geschlossenen Fenstern auf (kann jetzt nicht sagen nach wievielen). Dann muss ich den iexplore-Prozess killen und wieder starten. Der Effekt sieht so aus, dass sämtliche Windows-Fenster grafisch und farblich völlig irre dargestellt werden, die Fenster (oder Fragmente dessen) wackeln und zittern, dass man meinen möge, die Grafikkarte wäre im Eimer.



  • ich würde auch darauf tippen... 🙄



  • Dein Tipp liegt daneben, denn ich kann es auf jedem PC nachstellen.



  • Was ist denn das für eine Begründung 😃 - wenn ein Speicherleck im Programm ist dann ist das natürlich auf jedem PC so :p



  • @x-bay:
    Wenn du das so verlässlich reproduzieren kannst, sollte es ja kein Problem sein, mal eben nachzuzählen, wieviele Fenster du öffnen und schließen musst, bis der Effekt auftritt.



  • Gib mir mal ne Anleitung. Das interessiert mich. Aber sag mir, wenn ich vorher noch was schmeißen muss (ich meine keine Exception 😃 ).



  • lol, es gibt im Internet Seiten die das extra machen. Oder kommt das bei jeder Seite?



  • Die Seite heißt http://www.raus.de/



  • Achso, auch bei deinem Programm? Dann lad es doch hoch oder zeig uns den Code. 🤡 🤡



  • Trollthread... bitte schließen!



  • Abwarten! 🙄



  • wieso hab ich das Gefühl, ich müsste meine Behauptung rechtfertigen, dass die Erde doch "eckig" ist.
    Wie auch immer, mittlerweile habe ich die Stelle in meinem Programm gefunden, die das Problem verursacht. Und zwar mache ich bei jeder Mausbewegung eine Schleife, um festzustellen, ob sich der Mauscursor in einer bestimmten Region befindet. Bis zu 25 solcher Regionen kann es geben. Nun habe ich festgestellt, dass der mehrfachige Aufruf des Befehls CreateRectRgnIndirect das Problem verursacht. Wenn ich den Schleifendurchlauf auf 1 setzte, funktioniert es. Ich denke, es ist das fehlende DeleteObject(hrgn). Damit wäre das Problem meiner Anwendung gelöst. Warum MS allerdings das Problem im InternetExplorer nicht löst, ist mir dennoch schleierhaft:
    case WM_MOUSEMOVE:
    {
    POINT point;
    point.x = LOWORD(lParam);
    point.y = HIWORD(lParam);
    for (i=0;i<25;i++)
    {
    HRGN hrgn = CreateRectRgnIndirect( &glEvent[i].rect);
    if (PtInRegion( hrgn, point.x, point.y) != 0) //inside
    {
    ...
    }
    *********hier fehlt DeleteObject(hrgn)***********
    }
    }



  • omg 😮 😮 😮 😮 😮 😮 😮



  • Habe ich das richtig verstanden:
    Um das Problem nachzustellen, muss ich lediglich in einer Schleife den IE öffnen und wieder beenden und irgendwann krieg ich Darstellungsfehler ?



  • Ich bin doch froh Mozilla zu benutzen 😃


Anmelden zum Antworten