Verhindern das ctl+alt+del Direct Draw Programme stört



  • asdrubael schrieb:

    Mir geht es gar nicht so sehr darum, dass das Programm nachher weiterläuft, sondern mehr darum das es nicht unkontrolliert abstürzt. Deswegen such ich einen Hook auf dieses Keyboard-Event, damit ich "vorher" noch ein paar Sachen von Hand freigeben kann.

    Das ist doch Blödsinn.

    Wie rapso sagte, einfach Deine App schlafen legen, bis Du wieder am Zuge bist, dann alles wieder reset()en bzw. reinladen.



  • Ja alles Blödsinn außer Mutti 🙄
    Ich poste dann später mal was sich so ergeben hat.



  • 😕

    Nein, im Ernst, was soll denn dieser doofe Hack?!?

    <a href= schrieb:

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndxgen/html/directx8faq.asp">How do I disable ALT+TAB and other task switching?

    You don't. Really.



  • Es ist nicht meine DirectX-App und ich bin nicht in der Position den Programmierern zu sagen "macht mal einfach". Ich könnte nur drumrum bauen, aber da es zu aufwendig erscheint, warte ich jetzt ob sich noch andere Lösungen finden. Es hat schon seinen Grund gehabt warum ich im Winapi Forum und nicht hier gepostet habe.


  • Mod

    asdrubael schrieb:

    Es hat schon seinen Grund gehabt warum ich im Winapi Forum und nicht hier gepostet habe.

    gut dass man dich dann drauf hingewiesen hat, dass es ein directX resourcemanagement "feature" ist, dass du mit WinApi nicht umgehen kannst, weil es in Treibern implementiert ist und eine applikation selbst zu diesem "feature" conform laufen muss.

    rapso->greets();



  • Achso...

    Ein paar Sätze mehr Erklärung und es wäre direkt klar geworden.

    Darf man mal fragen, wofür KONKRET Du das brauchst?!? 😕



  • Ich benutze eine Lib, die benutzt Direct Draw um ein Display zu implementieren Wenn ich mit der Lib ein Programm schreibe wo ein Display dabei ist und dann Ctrl+Alt+Del drücke, passieren hässliche Dinge, besonders wenn gerade etwas auf´s Display kopiert wird. Manchmal bleibt das Display danach grau, manchmal fängt er sich wieder, manchmal stürzt die ganze Anwendung ab.

    Hätte ich einen Hook könnte ich das einfach manuell lösen ohne riesen Aufwand. Button Down Display zu, Button Up neues Display auf. Gibbet aber nicht also muss ich abwarten was die Lib-Programmierer dazu sagen.



  • Und Du kommst gar nicht an den Source ran?
    Auch nicht an Interfaces, daß man vielleicht was ableiten könnte?
    Eine andere Lib zu benutzen ist auch nicht drin?



  • Nein alles nicht, davon abgesehen hab ich von DirectX keine Ahnung und würde mit der Source eh nichts anfangen können.


  • Mod

    wenn es einen taskswitch gab, dann liefer "present" einen fehler, wenn du da dran kommst, könntest du vielleicht alle resourcen schliessen und neu anlegen, dann dürfte es gehen.

    rapso->greets();



  • rapso schrieb:

    wenn es einen taskswitch gab, dann liefer "present" einen fehler, wenn du da dran kommst, könntest du vielleicht alle resourcen schliessen und neu anlegen, dann dürfte es gehen.

    Genau. Er schnappt sich eben 'nen Disassembler, und haxx0rt da was rein! 👍


  • Mod

    Sgt. Nukem schrieb:

    rapso schrieb:

    ...wenn du da dran kommst...

    Genau. Er schnappt sich eben 'nen Disassembler, und haxx0rt da was rein! 👍

    oder er bekommt von der lib einen device pointer und ruft present auf, deswegen das wörtchen "wenn"

    rapso->greets();


Anmelden zum Antworten