Share via


Localización de propiedades estáticas

Puede localizar propiedades estáticas mediante asignaciones de valores parciales.

En el procedimiento siguiente se describe cómo se pueden localizar las propiedades estáticas mediante asignaciones de valores parciales con expresiones regulares.

Para usar asignaciones de valores para localizar propiedades estáticas

  1. Cree un archivo MOF maestro (Mastervm.mof).

    El siguiente ejemplo de código se puede usar para crear un archivo MOF maestro (Mastervm.mof).

    [Locale(0x409)]
    class Group1
    {
        [key] string ID;
        [DisplayName("Numbers"),
            ValueMap{0,1,2,3}:amended,
            Values{"Zero", "One", "Two", "Three"}:amended]
        Uint32 Numbers;
    };
    
  2. Cree las versiones independientes del idioma y específicas del idioma del archivo MOF.

    Escriba el siguiente comando en un símbolo del sistema para crear las versiones independientes del idioma y específicas del idioma del archivo MOF.

    mofcomp -MOF:LnVm.mof -MFL:LsVm.mfl -Amendment:MS_409 MasterVm.mof
    

    El compilador MOF genera el archivo MOF específico del idioma y el independiente del idioma, LnVm.mof y LsVm.mfl. Los valores de inglés americano para la propiedad Numbers se colocan en el archivo .mfl para el espacio de nombres American English.

    En el ejemplo de código siguiente se muestra el contenido del archivo LsVm.config.

    #pragma namespace("\\\\.\\root\\default")
    instance of __namespace{ name="ms_409";};
    #pragma namespace("\\\\.\\root\\default\\ms_409")
    
    [AMENDMENT, LOCALE(0x409)] 
    class Group1
    {
      [ValueMap{0, 1, 2, 3} : Amended,
          Values{"Zero", "One", "Two", "Three"} : Amended] 
      Uint32 Numbers;
    };
    
  3. Compile los dos archivos MOF y almacene la información de clase en el repositorio de CIM.

    Escriba el siguiente comando en un símbolo del sistema para compilar los dos archivos MOF.

    Mofcomp LnVm.mof 
    Mofcomp LsVm.mfl
    
  4. Localice el archivo MFL para otras configuraciones regionales.

    En el ejemplo de código siguiente se muestra el contenido de un archivo MFL para el espacio de nombres French.

    #pragma namespace("\\\\.\\root\\default")
    instance of __namespace{ name="ms_40C";};
    #pragma namespace("\\\\.\\root\\default\\ms_40C")
    
    [AMENDMENT, LOCALE(0x40C)] 
    class Group1
    {
        [key] string ID;
        [ValueMap{0, 1, 2, 3} : Amended,
            Values{"Zero", "Un", "Deux", "Trois"} : Amended]
        Uint32 Numbers;
    };
    

El resultado neto es que tanto el nombre para mostrar como el valor de la propiedad Numbers dependen de la configuración regional del usuario que ha iniciado sesión. Si el usuario especifica una configuración regional que no se ha proporcionado, los datos del calificador predeterminados proceden del espacio de nombres English (ms_409).

Este diseño implica que cada valor de cadena se usa como identificador de búsqueda y no se puede localizar. Al definir este esquema, debe asegurarse de que el valor que coloca el proveedor es independiente de la configuración regional.

Nota

WMI no proporciona actualmente compatibilidad en tiempo de ejecución para asignar valores a cadenas definidas por calificadores. La interpretación de la sintaxis sugerida es responsabilidad de la aplicación.