Compilar código MOF con valores de punto flotante

El compilador MOF acepta un valor de punto flotante especificado para una propiedad que no es de punto flotante. El valor se redondea hacia arriba o hacia abajo y se almacena como un número que no es de punto flotante. Esta situación puede generar resultados inesperados.

En el siguiente ejemplo de código MOF se define una clase denominada abc en un espacio de nombres denominado "Test". Este código MOF se compila sin errores, pero no puede consultar el valor de separador flotante definido para la propiedad exampleUint16 en la instancia que crea este código.

#pragma namespace ("\\\\.\\Root")

instance of __Namespace
{
    Name = "Test";
};

#pragma namespace ("\\\\.\\Root\\test")

Class abc
{
        [KEY] String testID ;
        Uint16 exampleUint16;
        Real64 exampleReal64;
};

Instance of abc
{ 
        TestID ="exampleID";
        exampleUint16 = 1000.4;
};

Si emite la consulta siguiente, obtendrá un código de error que indica una consulta no válida.

SELECT * FROM abc WHERE exampleUint16 = 1000.4

Sin embargo, la consulta siguiente busca la instancia indicada.

SELECT * FROM abc WHERE exampleUint16 = 1000

Compilar archivos MOF

mofcomp

Comandos de preprocesador