2012-04-04 7 views
0

Dies könnte eine schwierigere Frage sein, da ich nicht einmal weiß, wie es außerhalb von Python zu tun ist ...Vollständiges Sperren von Windows 7 mit Python 3.2?

Ich möchte ein Terminal-Programm schreiben, das meinen PC vollständig blockiert, bis ein Passwort eingegeben wird. Im gesperrten Zustand sollte niemand irgendetwas außerhalb des Terminals tun können. Darin kann der Benutzer rumalbern und alberne Befehle schreiben, aber er sollte nicht in der Lage sein, Fenster zu wechseln, außerhalb davon zu klicken, den Task-Manager zu öffnen, das Menü mit Ctrl + Alt Gr + Del und so weiter zu öffnen.

Während Suche nach einem Weg, dies zu erreichen ich von zwei Ansätze gedacht haben, die Python zu tun, auch in der Lage ist:

  • Ändern der Registry -> kann Task-Manager und einige andere Funktionen deaktivieren, aber nicht die App Switcher weder das Menü
  • Task-Tötung explorer.exe und dwm.exe -> Tötung explorer.exe nur die Taskleiste entfernt, scheint dmm.exe scheint der richtige Weg, aber wie es der Fenstermanager ist es automatisch wieder hochgefahren, sobald es getötet wird

Ich weiß, dass dies eine Art seltsamer Frage ist und enthält keinen jeden Code-Schnipsel, aber das Front-End ist kein Problem, und wie gesagt ich habe nicht einmal ein funktionierendes Konzept für das Back-End .

+1

Sie könnten einen neuen, leeren Desktop erstellen und zu diesem wechseln. Siehe: http://msdn.microsoft.com/en-us/library/windows/desktop/ms682573%28v=vs.85%29.aspx –

+0

Das sieht nach einem guten Ansatz aus. Übereinstimmungen mit dem msdn des ScreenSaver-Desktops sollten für meine Bedürfnisse funktionieren und pywin32 kann auf diese API-Aufrufe mit dem win32service-Modul gemäß der mitgelieferten Dokumentation zugreifen. Ich werde es ausprobieren und sehen, wie viel ich zur Arbeit bringen kann, da es auch besagt, dass Python 3.x-Unterstützung noch experimentell ist. –

Antwort

-1
  1. schreiben eine while-Schleife
  2. In der while-Schleife den Befehl schreiben dwm.exe

Es ist eine schlechte Lösung, aber der einzige, den ich kenne, um taskkill.

Grüße!