Condividi tramite


Componenti qualificati

Un componente qualificato è un metodo di indiretto a livello singolo, simile a un puntatore. I componenti qualificati vengono usati principalmente per raggruppare i componenti con funzionalità parallele in categorie. Ad esempio, se nella tabella Component sono elencati 30 componenti che sono gli stessi modelli di fax di Microsoft Word localizzati in 30 lingue, è possibile raggrupparli in una categoria di componenti qualificati usando la tabella PublishComponent.

I componenti qualificati vengono immessi nella tabella Component nello stesso modo dei componenti ordinari. Ogni componente deve avere un GUID univoco del componente e un identificatore del componente specificato nella tabella Component. Inoltre, i componenti qualificati sono associati a un GUID di categoria e a un qualificatore stringa di testo nella tabella PublishComponent. I componenti qualificati vengono a cui fa riferimento il GUID di categoria e il qualificatore, che punta solo al componente ordinario nella tabella Component.

Ad esempio, un GUID di ID componente qualificato può puntare a versioni diverse del linguaggio di una DLL di risorse. In questo caso, il gruppo di DLL delle risorse localizzate comprende la categoria e le stringhe LCID (Numeric Locale Identifiers) vengono comunemente usate come qualificatori. Uno sviluppatore può creare un pacchetto di installazione che usa questi componenti qualificati per eseguire le operazioni seguenti:

  • Trovare il percorso di una determinata versione del linguaggio della DLL di risorse usando MsiProvideQualifiedComponent o MsiProvideQualifiedComponentEx e installare la risorsa.
  • Determinare tutte le versioni del linguaggio della DLL della risorsa presenti chiamando MsiEnumComponentQualifiers.
  • Preparare l'applicazione per supportare altre lingue. Un Language Pack futuro per l'applicazione può usare il componente qualificato per aggiungere altre versioni del linguaggio della DLL della risorsa.

Per altre informazioni, vedere Uso di componenti qualificati.