Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Programm ALWAYS on top (https://www.delphipraxis.net/11224-programm-always-top.html)

fkerber 2. Nov 2003 12:59


Programm ALWAYS on top
 
Hi!

Erstmal sorry für den Titel, aber mir ist kein besserer eingefallen. Es stellt sich mir folgendes Problem:

Ich bräuchte ein Programm, das eine Internetseite anzeigen kann. Es muss JavaScript unterstützen. Dafür reicht glaub ich die TWebbrowser-Komponente, oder?

Eigentliches Problem:
Der Nutzer darf das Programm nicht verlassen können, also keine Windows-Taste, kein Strg-Alt-Entf, kein Minimieren, kein Schlißen, kein Verschieben und alles was dazu führen könnte, dass nicht der ganze Bildschirm (inkl. Taskleiste) vom Programm eingenommen wird, soll abgeschaltet werden.

a) geht das? (ich glaub das müsste gehen, so internet terminals haben das doch, oder?
b) wie geht das?
c) wie krieg ich das Prog wieder zu?

Ciao und danke für die Antworten!

fkerber

Luckie 2. Nov 2003 13:06

Re: Programm ALWAYS on top
 
Internetcafe Terminals regeln das meiste wohl über Policies des Betriebsystems. Alle anderen Möglichkeiten entsprechen nicht den Empfehlungen von Microsoft. Als da wären lowlevel Tastaturtreiber und Hooks. Aber ob du es galubst ode rnicht, du bist nicht der erste, der das vorhat.

Ich darf mal dein Schild erweitern:
Code:
      Posten
        |
      Suchen
        |
    ---
   |
Überlegen
   |
    ---
        |
        |
      Idee

Sharky 2. Nov 2003 13:07

Re: Programm ALWAYS on top
 
Zitat:

Zitat von fkerber
... also keine Windows-Taste, kein Strg-Alt-Entf, ....

Hai fkerber,

was Du meinst sind sogenannte "Secure-Browser". Unter welchen Windows-Versionen soll es denn laufen?
Ab der NT-Schiene kommst Du um eine eigene GINA nicht herum um z.B. Strg-Alt-Entf abschalten zu können.

Luckie 2. Nov 2003 13:09

Re: Programm ALWAYS on top
 
Er kommt um eine Gina drum rum, wenn er die Policies im System richtig einstellt.

fkerber 2. Nov 2003 13:40

Re: Programm ALWAYS on top
 
Hi!

Erstmal danke!
@luckie:wusste nicht so recht wonach ich suchen sollte!

Es soll eigentlich nur für einen Tag (Präsentation einer Internetseite auf ner Messe) sein, und deswegen, will ich den Aufwand möglichst klein halten :lol:

Da es ein Laptop ist, kann ich auch nicht einfach die Tastatur weglassen 8)

Os ist XP Home, wie müsste ich denn die Policies einstellen?
Oder was hat es mit der GINA auf sich?

Ich will erreichen, dass ich meinen Rechner dahin stellen kann und in nicht direkt im Auge haben muss, aber trotzdem niemand Mist bauen kann!

Ciao fkerber

Luckie 2. Nov 2003 13:43

Re: Programm ALWAYS on top
 
Am einfachsten ist es wohl, wenn du einen abschließbaren Holzkasten baust, wo nur der Bildschirm rauskuckt. Das meine ich ernst!

Wo nach man da sucht? Hier im Forum suchenGina, [dp]Strg+Alt+Entf[/dp], ...

fkerber 2. Nov 2003 13:46

Re: Programm ALWAYS on top
 
Hi!

Ich such gleich mal, aber wie sieht denn so ein Holzkasten bitte aus?
Das ist hoffentlich nicht des Rätsels Lösung, oder?

Wie wäre das denn mit den Policies?

Ciao fkerber

Luckie 2. Nov 2003 13:52

Re: Programm ALWAYS on top
 
Nun, ich habe mir das so vorgstellt:
Er ist so hoch wie wie das Notebook aufgeklappt und hinten offen. Dann klappst du das Notebook auf startest dein Programm und schiebst den Teil mit der Tastatur un den Holzkasten.

Code:


                 / Bildschirm
                /
               /
  ------------/
 | ----------/
 ||         | Notebook
 | ----------
  ------------- Holzkasten

fkerber 2. Nov 2003 13:56

Re: Programm ALWAYS on top
 
Hi!

Mit dem "wie sieht das denn aus" meinte ich nicht den Aufbau an sich, sondern mehr die Tatsache, dass so ein Holzkasten komisch aussieht - trotzdem danke!

Hab mal nach Gina geguckt, aber da was zu mache, hake ich für mich jetzt mal ab :roll:
Das ist mir etwas zu hoch :shock:

Also bin ich immer noch leicht ratlos!

Ciao fkerber

Luckie 2. Nov 2003 14:01

Re: Programm ALWAYS on top
 
Streich in in der Farbe von dem Rest des Standes und er passt dazu. Kannst auch so Kunststofffolie aufbügeln. IMHO die schnellste und sicherste Lösunmg.

fkerber 2. Nov 2003 14:05

Re: Programm ALWAYS on top
 
HI!

Ich werd das Gefühl nicht mehr los, das es OFFTOPIC ist, oder? :roll:

Dir ist klar, dass ich den Rechner später wieder verwenden will?
Bis jetzt bin ich soweit, dass ich alles weghab, außer dem Taskmanager und dem Startmenü!

Da noch ne Lösung? Kann ich die Windowstaste abfangen?

Ciao fkerber

Christian Seehase 2. Nov 2003 14:06

Re: Programm ALWAYS on top
 
Moin fkerber,

ich hab' so ein Internetterminal mal mit Hilfe des IE 5 unter NT 4.0 realisiert.
Dazu solltest Du mal im MSDN unter Policies suchen.
Mit deren Hilfe kannst Du den Rechner so dicht machen, dass man bestenfalls noch das Programm beenden kann, und neu Starten, aber sonst war auf nichts mehr Zugriff.
Der IE lief dabei im Kiosk Mode (Aufruf IEXPLORE.EXE -kiosk) und das Kontextmenü des IE war abgeschaltet.

Luckie 2. Nov 2003 14:07

Re: Programm ALWAYS on top
 
Ja offtopic schon, nur wir suchen ja eine Lösung für dich. Mit dem Notebook passiert doch gar nichts, der steckt doch im Holzkasten.

fkerber 2. Nov 2003 14:13

Re: Programm ALWAYS on top
 
HI!

@Luckie: Ich dachte du meintest den Laptop und nicht den Kasten :oops: :oops:

Ich kenn die Farbe des Tisches aber leider nicht! Naja wie gesagt, nicht gerade die elegante Lösung!

Ich guck mal noch wegen den Policies. Danke!

Ciao fkerber

fkerber 2. Nov 2003 14:17

Re: Programm ALWAYS on top
 
Hi!

Danke für den Tipp mit dem Kiosk-mode, nur leider geht das nicht, wie es soll!
Im Kioskmode findet er nix! Kommt immer Server nicht gefunden, obwohl es sonst geht :(

Ciao fkerber

alcaeus 2. Nov 2003 14:20

Re: Programm ALWAYS on top
 
Unter Win NT 4.0 kannst du die vorhandene Shell (explorer.exe) durch eine eigene austauschen. Du kannst auch das automatische Anmelden auswählen, so dass sich der Comp. automatisch wieder als ein vorbestimmter Benutzer anmeldet. Du richtest also einen Benutzer ein, setzt in der Registry die nötigen Werte, und du hast das Programm als neue Shell. Dann musst du nur noch die explorer.exe austauschen auf diskette kopieren und vom Computer löschen. Wenn du dann die eigentliche Shell ausführen willst, musst du nur noch die Diskette einschieben, Strg-Alt-Entf drücken und dann einen neuen Task starten.

Also, falls dich die Sache interessiert, könnte ich die Registry-Schlüssel und -Werte heraussuchen und dir die nötigen Programme schicken.

fkerber 2. Nov 2003 14:30

Re: Programm ALWAYS on top
 
Hi!

Ich weiß zwar nicht, ob ich es dafür dann verwende, aber interessieren würde es mich auf jeden Fall!
Geht das dann auch unter WinXP Home?

Wie sieht es da so mit den Risiken aus?

Ciao fkerber

Email: fkerber@web.de

Christian Seehase 2. Nov 2003 14:56

Re: Programm ALWAYS on top
 
Moin fkerber,

da auch XP Home NT als Basis hat, sollte es auch damit gehen, nur kenne ich jetzt hier nicht unbedingt alle Möglichkeiten es umgehen zu können ;-)
Ich hab' damals ca. 2 bis 3 Tage gebraucht, bis ich alles so zusammen hatte dass die Kiste zu war und dennoch wie gewünscht die Seiten angezeigt hat.
Man konnte den IE zwar schliessen, aber ausser einem Neustart ging nichts mehr. Das Startmenü lässt sich fast vollständig leeren, ebenso wie der Desktop, die Laufwerke lassen sich komplett ausblenden, und der Aufruf des Taskmanagers auch.
Es sollte also schon recht sicher sein.
Meines Wissens stehen die Terminals seit zwei Jahren unverändert da.
Unter XP müsstest Du Dir mal die Group Policies anschauen, was Du da passendes findest.

SleepyMaster 14. Dez 2003 09:04

Re: Programm ALWAYS on top
 
Der Kioskmode geht bei mir schon:
"D:\Programme\Internet Explorer\iexplore.exe" -k www.google.de

Mann muss nur anstelle von -Kiosk einfach nur -k schreiben!

woki 14. Dez 2003 10:50

Re: Programm ALWAYS on top
 
HI,

das mit dem Holzkasten ist gar nicht so schlecht, weil es gleich als Diebstahlsicherung wirkt, und auf Messen ist sowas ja auch üblich. Auf Messen wird wirklich alles geklaut, was nicht festgenagelt ist. Ich hab vor längerer Zeit mal im Spielebereich gearbeitet, und wir hatten den ersten Protoyp einer amerikanischen (glaube ich) Konsole für die Messe bekommen der war in der hintersten Ecke des geschlossenen Standes in einer Tonne eingebaut, so dass man durch den ganzen Stand durchmußte, die Kabel in der Tonne abkneifen und das Ding rausnehmen.

Obwohl der Stand dauernd mit einer ganzen Mannschaft besetzt war, und wir die Gefahr kannten, war die Konsole nur für weniger als zwei Stunden in unserem Besitz. Lange vor Mittag des ersten Tages war sie geklaut.

Grüsse
Woki

Der_Unwissende 14. Dez 2003 11:13

Re: Programm ALWAYS on top
 
Mal ein Vorschlag in eine ganz andere Richtung. Schreib doch dein Programm einfach System-modal. Ist eine WinAPI-Funktion, greift also tief genug auf Windows zurück, um auch nicht umgangen zu werden. Dann musst du nur noch dafür sorgen, dass das Programm nicht verlassen werden kann (zum Beispiel in dem du das OnExit-Ereignis abfängst) und müsste klappen.
Hab das mal zu meinen Delphi-Anfängen gemacht.

Luckie 14. Dez 2003 11:17

Re: Programm ALWAYS on top
 
Zitat:

Zitat von Der_Unwissende
Schreib doch dein Programm einfach System-modal.

Was heißt das? "Eine Anwendung system-modal zu schreiben". Wenn ich auch nicht weiß, was das sein könnte, Strg+alt+Entf verhindert es bestimmt nicht.

Der_Unwissende 15. Dez 2003 13:43

Re: Programm ALWAYS on top
 
Also, ein Modales Fenster muss immer erst beendet werden, bevor etwas anderes gemacht werden kann. Anders gesagt, dein Programm bekommt als einziges alle Messages. Wenn jetzt also jemand etwas anderes Starten möchte als dein Programm, so müsste dieser Jmd. erstmal dein Prog. beenden.
Wenn du genau das abfängst (was leicht sein sollte), dann kann man vielleicht sogar STRG-ALT-ENTF Drücken und könnte versuchen dein Prog. zu killen, ginge nur nicht. Denn das Programm würde Windows antworten (gilt also als nicht abgestürzt) und trotzdem immer aktiv sein. Ich werd mal gucken, ob ich dir da ein Beispiel schreiben kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:45 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz