Condividi tramite


Determinare se un PC è un Tablet PC

In alcuni casi potrebbe essere necessario determinare se la tua applicazione è in esecuzione su un Tablet PC perché potresti voler sfruttare le funzionalità intrinseche di input penna e riconoscimento. Per determinare se l'applicazione ha accesso alle funzionalità di Tablet PC, è possibile usare la chiamata API Windows GetSystemMetrics() come descritto in questo argomento.

applicazioni Client-Side

È possibile utilizzare le tecniche seguenti per determinare se il codice è in esecuzione in un Tablet PC.

Uso di GetSystemMetrics (SM_TABLETPC)

Windows XP Tablet PC Edition

In Microsoft Windows XP Tablet PC Edition utilizzare la funzione GetSystemMetrics(SM_TABLETPC) per determinare se un computer è un Tablet PC. GetSystemMetrics(SM_TABLETPC) è progettato per restituire TRUE in un computer che esegue Windows XP Tablet PC Edition.

Windows Vista

In Windows Vista non esiste più un TABLET PC SDK distinto. Windows SDK ora contiene una sezione denominata "Tablet PC and Touch Technology" e la logica di GetSystemMetrics(SM_TABLETPC) è stata modificata in modo da riflettere questo. GetSystemMetrics(SM_TABLETPC) restituisce ora true se sono soddisfatte tutte le condizioni seguenti:

  • Sul sistema è presente un digitalizzatore integrato, penna o tocco.
  • Il componente facoltativo Tablet PC è installato. Questo componente contiene funzionalità come Tablet PC Input Panel e Windows Journal.
  • Il computer è concesso in licenza per l'uso del componente facoltativo. Le versioni Premium di Windows Vista, ad esempio Windows Vista Home Premium, Windows Vista Small Business, Windows Vista Professional, Windows Vista Enterprise e Windows Vista Ultimate, sono concesse in licenza per l'uso del componente facoltativo.
  • Tablet PC Input Service è in esecuzione. Tablet PC Input Service è un nuovo servizio per Windows Vista che controlla l'input tablet PC.

Con questa maggiore accuratezza, GetSystemMetrics(SM_TABLETPC) continua a essere il modo consigliato per determinare se un computer che esegue Windows Vista è un Tablet PC.

Uso della presenza di file binari della piattaforma tablet

Sia in Windows XP Tablet PC Edition che in Windows Vista, è possibile cercare la presenza dei binari dell'inchiostro, come inkobj.dll e Microsoft.Ink.dll, e utilizzare le relative funzionalità supportate, se presenti.

In Windows Vista, i file binari della piattaforma Tablet PC vengono installati in tutte le versioni client per impostazione predefinita. Le funzionalità di input e scrittura manuale sono disponibili in tali versioni. Il riconoscimento è disponibile solo nelle versioni Premium di Windows Vista.

applicazioni Web-Based

In Windows Vista, la stringa dell'agente utente segnalata da Internet Explorer include "Tablet PC 2.0" se, in base a GetSystemMetrics(SM_TABLETPC), il dispositivo è un Tablet PC.

In Windows XP Tablet PC Edition 2005, la stringa agente utente include il Tablet PC 1.7. La stringa dell'agente utente è simile alla seguente:

Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705; Tablet PC 2.0)

Utilizzare questo valore per determinare se il computer client è un Tablet PC e supporta controlli di input penna basati sul Web.

GetSystemMetrics