Abfrage der Mausposition => EWin32Error 5 ???



  • Ich hab in einer Timerroutine einer Form (mit ShowModal angezeigt!) folgendes:

    ...
    x=Mouse->CursorPos.x;
    ...
    stehen.

    Das funktioniert auch ganz prima, der Wert kann normal weiterverarbeitet werden.
    ABER:

    Wenn der Taskman von MS gestartet wird, kommt der schwere Fehler.
    Ist der Taskman vorher schon an, klappt alles normal, auch das Schliessen des Taskman verursacht keinen Fehler.

    Kann das jemand nachvollziehen? Darf die Maus manchmal nicht abgefragt werden?
    Der Fehler heisst: "Zugruffs fehler".
    Wie kann ich den Zustand vor der Mausabfrage klären? (Ist der Taskman am Starten?)

    ÜBRIGENS:
    Ich hab das in einen try/catch Block gelegt, da schmiert wenigdtens das Programm nicht mehr ab. Aber das ist doch nicht normal.

    Gruss
    Frank



  • Was sagt der Debugger?



  • Der springt aus dem Dialog raus.

    ... Hinter DasFormular->ShowModal();

    und bringt diese drollige Fehlermeldung mit Code: 5

    Mit try/catch (in dem Dialog) kann ich den Abfangen, dann kommt die Meldung nur noch im Debug- Mode (das ist ja normal).

    Das scheint aber normal zu sein!

    Ich hab mal die WinAPI- Funktion eingesetzt, die bringt in dem Moment, wo der TaskMan startet den ReturnWert für "failed". Das ist also ein Win- internes Ding.

    Damit ist das Phaenomen eigentlich geklärt. Ist halt so bei Windoof.

    => Nie in nem Timer die Mouse mit Borland- Mitteln befragen!
    oder
    => immer schön try/ catch um solche Abfrage!

    ÜBRIGENS: Ich nutze Win Vista Home!

    Gruss
    frank


Log in to reply