Riferimento alle impostazioni locali

Importante

È consigliabile usare il driver di classe posta in arrivo IPP di Microsoft, insieme a Print Support Apps (PSA), per personalizzare l'esperienza di stampa in Windows 10 e 11 per lo sviluppo di dispositivi della stampante.

Per altre informazioni, vedere la guida alla progettazione dell'app di supporto per la stampa.

Uso dei file GPD

I file GPD possono fare riferimento alle impostazioni locali di un sistema. In genere, gli identificatori delle impostazioni locali vengono usati nelle istruzioni *Switch, in cui i parametri, ad esempio le dimensioni predefinite della carta e le DLL delle risorse, possono essere specificati in modo specifico per le impostazioni locali.

Per fare riferimento alle informazioni sulle impostazioni locali, il file GPD deve contenere un'istruzione *Include che include il file locale.gpd, incluso in con Windows Driver Kit (WDK), come indicato di seguito:

*Include: locale.gpd

Questo file GPD definisce una funzionalità denominata "Locale" e definisce le opzioni per molte impostazioni locali. Fare riferimento al file per vedere quali impostazioni locali sono definite. Di seguito è riportato un esempio di utilizzo di queste opzioni delle impostazioni locali. L'esempio basa le dimensioni predefinite della carta sulle impostazioni locali.

*Feature: PaperSize
{
...
    Option: A4
    {
    }
    ...
*switch: Locale
{
    *case: English_United_States
    {
        *DefaultOption: Letter
    }
    *case: English_United_Kingdom
    {
        *DefaultOption: A4
    }
    *default:
    {
        *DefaultOption: Letter
    }
} *% End of switch
} *% End of Feature: PaperSize

In fase di esecuzione, Unidrv determina le impostazioni locali predefinite del sistema chiamando GetSystemDefaultLCID. Quando viene installata una stampante, il parser GPD legge il file GPD della stampante e usa le informazioni all'interno dell'istruzione *Case associata alle impostazioni locali predefinite. Si noti che se le impostazioni locali del sistema vengono modificate dopo l'installazione della stampante, le opzioni basate sulle impostazioni locali non vengono modificate.

Ecco un altro esempio, che seleziona una DLL di risorse in base alle impostazioni locali. La DLL della risorsa può contenere risorse specifiche delle impostazioni locali, ad esempio stringhe di visualizzazione.

*switch: Locale
{
    *case: English_United_States
    {
        *ResourceDLL: english.dll
    }
    *case: German_Standard
    {
        *ResourceDLL: german.dll
    }
    *default:
    {
        *ResourceDLL: english.dll
    }
}

Impostazione delle dimensioni predefinite della carta in base alle impostazioni locali

È possibile che il driver assegni le dimensioni predefinite della carta, metrica o non metrica, in base alla posizione geografica dell'utente.

L'algoritmo seguente recupera le impostazioni locali di sistema predefinite e quindi usa i codici paese/area geografica per determinare se le impostazioni locali del sistema rappresentano un paese che in genere usa dimensioni della metrica o di carta non metrica. Con queste informazioni, il conducente può impostare le dimensioni predefinite della carta in modo appropriato, ad esempio A4 per i paesi che usano il sistema di metriche e le dimensioni della lettera per i paesi che non lo fanno.

  1. Usare la funzione GetLocaleInfo per recuperare le impostazioni locali di sistema predefinite. Usare LOCALE_SYSTEM_DEFAULT per il primo parametro, Impostazioni locali e LOCALE_ICOUNTRY per il secondo parametro , LCType.

  2. Usare le impostazioni locali di sistema predefinite ottenute da GetLocaleInfo per determinare le dimensioni della metrica o della carta non metrica.

    • Non metrica se le impostazioni locali di sistema predefinite sono:

      • CTRY_UNITED_STATES o

      • CTRY_CANADA o

      • Maggiore o uguale a 50, ma minore di 60 e non CTRY_BRAZIL o

      • Maggiore o uguale a 500, ma minore di 600

    • Metrica in caso contrario.