Compilazione di file MOF localizzati
È necessario compilare il file MOF master per creare i file MOF neutrali rispetto alla lingua e specifici per la lingua.
Digitare il comando seguente al prompt dei comandi per compilare un file MOF master.
mofcomp -MOF:Lnmof.mof -MFL:Lsmof.mfl -Amendment:MS_409 Mastermof.mof
Quando si esegue questo comando, il compilatore MOF crea due file MOF dal file Mastermof.mof originale. Il compilatore MOF genera una versione indipendente dal linguaggio, Lnmof.mof, in cui vengono rimossi tutti gli elementi specifici del linguaggio. Viene creata anche una seconda versione specifica del linguaggio, Lsmof.mof; questo file contiene solo gli elementi contrassegnati con il Modificato Qualifier Flavor nel file Mastermof.mof.
Nell'esempio di codice seguente viene illustrato il contenuto del file MOF indipendente dal linguaggio (Lnmof.mof) generato.
#pragma namespace("\\\\.\\root")
Instance of __Namespace
{
Name = "TEST";
};
#pragma namespace("\\\\.\\root\\TEST")
[LOCALE(1033)]
class myclass
{
[key] string Name;
uint64 Value;
uint64 Timestamp;
};
Nell'esempio di codice seguente viene illustrato il contenuto del file MOF specifico del linguaggio (Lsmof.mfl) generato.
#pragma namespace("\\\\.\\root\\TEST")
instance of __namespace{ name="ms_409";};
#pragma namespace("\\\\.\\root\\TEST\\ms_409")
[Description("Localized version of MyClass for American English") :
Amended, LOCALE(0x409)]
class myclass
{
[DisplayName("User Name") : Amended,
Description("The Name property contains the name of the user") :
Amended, key]
string Name;
[DisplayName("Time Stamp") : Amended,
Description("This property shows when the object was created") :
Amended]
uint64 Timestamp;
};
La compilazione di un file MOF con il qualificatore modificato genera solo file MOF separati, indipendenti dalla lingua e specifici della lingua; il repository CIM non viene aggiornato con le nuove informazioni sulla classe. È necessario usare il compilatore MOF per compilare i due file MOF generati dalla prima compilazione prima che tutte le informazioni sulla classe siano disponibili per WMI.
Quando si compila un file MOF master, solo i qualificatori con il tipo Amended vengono spostati nel file MOF specifico per la lingua. I qualificatori che non hanno la versione modificata non sono localizzati e esistono solo nella definizione della classe di base nel file MOF neutro rispetto alla lingua. I qualificatori non localizzati possono essere usati per le descrizioni predefinite se le descrizioni localizzate non sono disponibili.
È possibile usare il comando emendamento pragma anziché specificare modificato come passaggio al compilatore MOF. Una di queste opzioni equivale alla richiesta di versioni specifiche della lingua e indipendenti dalla lingua di un file MOF. Se si utilizza il comando pragma amendment o l'opzione della riga di comando modificata, è necessario specificare il nome dei file di output usando le opzioni -MFL e -MOF al prompt dei comandi.
Nota
Il file MOF indipendente dal linguaggio generato dal compilatore MOF contiene l'equivalente decimale dell'ID delle impostazioni locali, anche se questo valore è stato immesso in formato esadecimale. Nell'esempio precedente il compilatore ha convertito il valore 0x409 nel numero decimale 1033 per il file di output Lnmof.mof.