Domanda

Sto cercando di creare un'applicazione che deve bloccare l'accesso al PC mentre è in esecuzione. Devo eseguire l'app al massimo, in modalità a schermo intero e assicurarmi che alt-tabbing non consenta l'accesso ad altre app o alla barra delle applicazioni.

Finora ho impostato TopMost = true, WindowStyle = WindowStyle.None e WindowState = WindowState.Maximized che raggiunge la maggior parte di ciò di cui ho bisogno, ma ottengo ancora casi in cui la barra delle applicazioni diventa visibile. Ho cercato di implementare il comportamento di LostFocus sulla finestra, ma questo non sembra darmi il comportamento di cui ho bisogno.

Qualcuno può indicarmi la direzione di cui ho bisogno per attuare questo comportamento, per favore?

Informazioni aggiuntive
Sfortunatamente, la natura di questo progetto è tale che non possiamo alterare le macchine client e stanno eseguendo un mix di XP, Vista e Win7. I PC non sono di nostra proprietà, ma devono essere utilizzati per la consegna dei contenuti nel modo più sicuro possibile. I proprietari dei PC sono a conoscenza delle restrizioni per l'esecuzione del software e sono felici che siano "bloccati". durante l'esecuzione della nostra applicazione, ma non possono essere modificati in altro modo.

Altri modi
HakonB ha menzionato l'applicazione BabySmash di Scott Hanselman, quindi sono andato a cercare il suo modo di gestire la situazione. Come dice HakonB, non è il metodo più pulito per gestire la perdita di attenzione, ma sembra funzionare, o almeno dovrebbe fare fino a quando non trovo una soluzione migliore. Utilizza un timer che si attiva ogni secondo e attiva una chiamata al metodo SetForegroundWindow (IntPtr hWnd) di user32.dll per ottenere lo stato attivo, indipendentemente dal fatto che abbia lo stato attivo o meno. Grazie per l'heads-up, HakonB!

È stato utile?

Soluzione

Dai un'occhiata al BabySmash di Scott Hanselman. Puoi trovare il sito all'indirizzo BabySmash

Aveva un paio di post sul blog che descrivevano il suo lavoro per realizzare l'applicazione. È dotato di un'applicazione baby-safe in modalità kiosk.

Puoi trovare il progetto su Codeplex

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top