Questo è il primo post di una serie di articoli su Windows
Embedded Standard 7, in particolare sulle novità introdotte dal
Service Pack 1 e negli aggiornamenti successivi.
Il primo argomento di cui ci occupiamo è "il filtro per la
Tastiera". Nei dispositivi Embedded aventi forme proprie e
differenti da PC di scrivania (come, ad esempio, registratori di
cassa o chioschi informativi), il costruttore spesso ha la
necessità di trovare soluzioni proprietarie di tastiera sia per
forma e sia per numero e funzionalità dei tasti. In questo caso
spesso si sfrutta la situazione eliminando fisicamente dalla
tastiera tasti potenzialmente pericolosi per la propria
applicazione: il tasto Windows e/o il
tasto List. Altrettanto spesso però c'è
l'esigenza di lasciare l'accessibilità ad una o più porte USB per
svariati utilizzi: manutenzione, aggiornamento o vere e proprie
funzionalità richieste dall'applicazione. Connettendo una tastiera
USB completa alla porta USB si vanificano completamente tutti gli
sforzi di limitare l'uso di combinazioni di tasti non voluti.
Microsoft ha sviluppato quindi questa soluzione che permette di
"filtrare" tutti i tasti e/o le combinazioni di tasti provenienti
dalla tastiera e di far arrivare all'applicativo soltanto quelli
previsti.
In questo post (e nei successivi) analizzeremo i vari aspetti di
questo package esaminandone le modalità di configurazione e di
utilizzo. In particolare, oltre ad introdurre l'argomento, ci
occuperemo di come inserire il package "Keyboard Filter" nella
build di Windows Embedded Standard 7, della gestione del servizio e
delle configurazioni in generale.
Il filtro per la tastiera (post 1 di 4)
Il filtro per la tastiera (keyboard filter) è una
funzionalità che è stata introdotta per la prima volta nella
distribuzione denominata Windows Embedded POSReady 7: una versione
di Windows Embedded Standard 7 dove la build è stata definita e
prodotta direttamente da Microsoft inserendo i package e gli strati
software tipici dell'ambiente POS (Point of Services),
cioè per quei dispositivi dove è coinvolta una transazione
economica oppure informativa (ad esempio: distributori di oggetti,
biglietti, materiale di consumo, chioschi informativi, ecc...).
Questa funzionalità permette di configurare le combinazioni di
tasti che non si desidera arrivino al sistema dalla tastiera, ad
esempio: Ctrl+Alt+Canc oppure Windows+L. Queste combinazioni, come
tante altre, possono causare attivazioni di comandi non desiderati
su di un dispositivo dedicato al quale, davanti allo schermo, c'è
l'utente finale e non un tecnico.
Molto spesso i costruttori dei dispositivi embedded progettano
soluzioni con una tastiera personalizzata e priva dei tasti non
desiderati come: Windows, Menu, Alt, ecc... ma poi, durante la fase
di produzione si accorgono che alcune combinazioni sono richieste
sia dall'utente finale sia dalle applicazioni stesse (Ctrl+C,
Ctrl+X, Ctrl+V, ecc...), oppure dalle necessità portate dalla
lingua (ad esempio, sulla tastiera italiana, la "@" si trova sul
tasto Alt Gr+ò; se ho tolto dalla tastiera fisica il tasto Alt Gr
non sarò più in grado di inserire quel simbolo).
L'inconsistenza della soluzione fisica diventa palese se si
pensa che molti dispositivi offrono all'utente la possibilità, per
svariati motivi, di avere una porta USB. Diventa banale a questo
punto collegare una tastiera USB alla porta a disposizione e
superare tutte le barriere che pensavamo di aver costruito con una
tastiera fisica limitata.
Nelle soluzioni più recenti si è visto un progressivo aumento
dei touch-screen e di tastiere su video che, come quelle fisiche
personalizzate, possono essere limitate ad un insieme ristretto di
caratteri, ma anche qui l'inserimento di una tastiera USB, o di un
applicativo di tastiera completo, vanificherebbe il tutto.
E' da notare, inoltre, che tutte le tastiere virtuali, sia
quelle interne di Windows che quelle personalizzate, NON vengono
"filtrate" da questa soluzione che è efficace (per scelta
architetturale) soltanto per le tastiere fisiche.
Un altro elemento di attenzione è quello legato alla nazionalità
della tastiera. Il filtro è stato progettato per funzionare sulla
tastiera inglese e quindi tutti i nomi e le sequenze devono essere
esplicitate in inglese.
Il filtro per la tastiera ha già un certo numero di combinazioni
predefinite che possono essere attivate con dei criteri specifici,
ma ne permette la creazione di altre personalizzate e, quindi,
copre in maniera semplice ed efficace tutte le esigenze.
In questo capitolo analizzeremo come inserire nella build i
package opportuni per gestire il filtro di tastiera e come
configurarlo per evitare che l'utente faccia arrivare agli
applicativi o al sistema delle sequenze non desiderate.
Inserimento del package "Keyboard Filter" nella build
Al momento l'inserimento è molto semplice e non permette alcuna
configurazione. E' da notare però che questa nuova funzionalità NON
è contenuta nel SP1, ma è stata rilasciata in seguito (Settembre
2011), per cui, se non si dovessero trovare gli elementi "Keyboard
Filter" nella sezione delle "Embedded Enabling Features", bisognerà
prima aggiornare la Distribution Share di lavoro.
Il servizio del filtro di tastiera
Il filtro di tastiera si basa su un servizio di Windows
denominato "KeyboardFilter" che può essere avviato o arrestato da
un prompt dei comandi avendo i diritti di amministratore:
Per avviarlo digitare: sc start keyboardfilter
Per arrestarlo digitare: sc stop keyboardfilter
Arrestando il servizio, questo rimarrà nel medesimo stato anche
dopo il successivo riavvio del computer quindi, per riavviarlo,
bisognerà digitare il comando di start manualmente.
Configurazione del filtro di tastiera
Per la configurazione del filtro di tastiera bisogna utilizzare
il programma gpedit.msc (Editor dei Criteri di
Gruppo) che si trova nella cartella
C:\Windows\System32\. Questo programma fa parte della console di
gestione di Windows (MMC, Microsoft Management Console)
che permette di modificare, con la stessa interfaccia utente, sia
le configurazioni che si riferiscono al singolo utente sia quelle
che si riferiscono al sistema. Per utilizzare questa console
bisogna avere i privilegi di amministratore e le configurazioni
possono essere personalizzate per ogni singolo utente. Questo è uno
dei motivi per cui la configurazione, attualmente, va fatta dopo
che il sistema è stato generato.
Possiamo dividere le combinazioni di tasti che si possono
intercettare in due gruppi: quelle predefinite e quelle
personalizzate.
Configurazione delle combinazioni di tasti predefinite
In questo elenco sono raggruppate le combinazioni di tasti più
diffuse, in modo da semplificarne la configurazione. Queste
combinazioni possono essere divise in:
· Accessibilità (Accessibility keys)
· Applicative (Application keys)
· Scorciatoie del desktop o della shell (Desktop and shell
keys)
· Modificatori (Modifier keys)
· Sicurezza (Security keys)
· Gestione finestre (Windows management keys)
Nel prossimo post entreremo più nel dettaglio di ciascun gruppo
di combinazioni
Configurare le combinazioni di tasti predefinite
In questo elenco sono raggruppate le combinazioni predefinite di
tasti come, ad esempio: Ctrl+Alt+Canc,
Windows+R, ecc.... Per ognuna di queste
combinazioni è possibile attivare la disabilitazione.
In un prossimo post entreremo più nel dettaglio di come si
disabilitano queste combinazioni.
Configurazione di filtri personalizzati
La parte di personalizzazione dei filtri permette la creazione
di combinazioni di tasti non incluse in quelle predefinite. Esiste
una metodologia e delle regole da seguire per poter disabilitare
queste combinazioni.
In un prossimo post entreremo più nel dettaglio di come si
disabilitano queste combinazioni.
Configurazione dei filtri per tastiere "non inglesi"
I filtri personalizzati di cui abbiamo parlato nel paragrafo
precedente, si riferiscono ai "nomi" dei tasti riguardanti la
tastiera inglese (anzi più correttamente a quella en-US). Quando ci
si vuol riferire a tastiere nazionali (nel caso nostro "italiana")
bisognerà comunque riferirsi ai nomi di quella inglese.
In un prossimo post riporteremo la corrispondenza dei tasti con
i relativi nomi e raggruppamenti.
Filtri di tastiera e tastiera a video
La tastiera a video di sistema (On Screen Keyboard)
visualizza una versione del tutto simile a quella fisica della
nazione corrente, dove i tasti possono essere selezionati con il
mouse o altri dispositivi di puntamento (o con le dita in caso di
schermi touch). La tastiera a video NON viene bloccata dai
filtri.
I filtri di tastiera hanno effetto soltanto sulle tastiere
fisiche e quindi tutte le soluzioni software che gestiscono l'input
di "tasti" virtuali (utilizzando chiamate al sistema) non possono
essere bloccate in questo modo.
_______________________ooo O ooo____________________________
Nel prossimo post di questo articolo, ci occuperemo
dell'utilizzo della "Configurazione delle combinazioni di tasti
predefinite".
Questi articoli, suddivisi in post, sono stati scritti, curati
nei particolari e tradotti in inglese oltre che da me anche da due
miei colleghi (entrambi trainer certificati Microsoft per Windows
Embedded Standard 7): Gianni Rosa Gallina e Dorangela Daniele.