Compartir a través de


CIM_DATETIME

Puede acceder a todos Modelo común de información (CIM) fechas y horas en WMI utilizando uno de los dos formatos de longitud fija específicos de WMI y CIM. En scripting, use el SWbemFECHA Y HORA objecto para convertirlas en fechas y horas normales.

Las siguientes secciones describen cómo utilizar los formatos de fecha y hora de WMI.

Format

La siguiente tabla enumera los dos formatos de fecha y hora utilizados por WMI.

Formato Descripción
FECHA Y HORA
yyyymmddHHMMSS.mmmmmmsUUU
Formato en que CIM FECHA Y HORA valores se almacenan. Este formato es independiente de la localización así que puede escribir una secuencia de comandos que se ejecute en cualquier máquina. Debe utilizar este formato para definir una fecha y hora en Objeto formato gestionado (MOF), o al escribir en una instancia utilizando la COM API for WMI o la Scripting API para WMI. Para más información, véase Modificar una propiedad de instancia.
Formato válido solo en consultas WMI Query Language (WQL).
yyyy-mm-dd HH:MM:SS:mmm
Este formato puede utilizarse en scripts que utilicen la SWbemFECHA Y HORA métodos. Para más información consulte Buscar WMI o Buscar con WQL. Este formato no es independiente de la configuración regional. El orden del año, mes y día depende de la configuración regional y de formato de idioma de la sesión de usuario. or ejemplo, mientras que el formato por defecto para el inglés de Estados Unidos es "mm-dd-yyyy hh:mm:ss:mmm", el formato para la mayoría de los demás países o regiones es "yyyy-mm-dd hh:mm:ss:mmm".

La siguiente tabla enumera los campos de los formatos.

Campo Descripción
yyyy Año de cuatro dígitos (0000 a 9999). Su implementación puede restringir el rango soportado. Por ejemplo, una aplicación puede abarcar solo los años 1980 a 2099.
mm Mes de dos dígitos (01 a 12).
dd Día del mes de dos dígitos (01 a 31). Este valor debe ser apropiado para el mes. Por ejemplo, el 31 de febrero no es válido. Sin embargo, su implementación no tiene que comprobar si los datos son válidos.
HH Hora del día de dos dígitos utilizando el reloj de 24 horas (de 00 a 23).
MM Minuto de dos dígitos en la hora (de 00 a 59).
SS Número de dos dígitos de los segundos del minuto (de 00 a 59).
mmmmmm Número de seis dígitos de microsegundos en el segundo (de 000000 a 999999). No es necesario que su aplicación admita la evaluación mediante este campo. Sin embargo, este campo debe estar siempre presente para preservar la naturaleza de longitud fija de la cadena.
mmm Número de tres dígitos de los milisegundos del minuto (de 000 a 999).
s Signo más (+) o signo menos (-) para indicar un diferencia horaria positivo o negativo con respecto a la hora universal coordinada (UTC).
UUU Desplazamiento de tres dígitos que indica el número de minutos que la zona horaria de origen se desvía de UTC. Para WMI, se recomienda, pero no es obligatorio, convertir las horas a GMT (un diferencia horaria con UTC de cero).

Debe introducir todos los campos con la longitud indicada, utilizando ceros a la izquierda según corresponda al tipo. No obstante, utilice asteriscos para indicar los campos no utilizados o como valor comodín. Puede usar asterisco (*) en todos lados excepto el DONDE frase de una búsqueda Por ejemplo, una fecha y hora con un año no especificado puede ocurrir en cualquier año. Si desea dejar un campo sin especificar, debe sustituir todo el campo por asteriscos.

Los siguientes ejemplos describen los usos válidos e inválidos de los asteriscos:

  • 19980416******.000000+*** (Legal)
  • 1998-04-16 ******:*** (Ilegal)
  • 199*0416******.000000+*** (ilegal)
  • 199*-04-16 ******:*** (Ilegal)

Si se utiliza una fecha-hora para representar un momento concreto, todos sus campos deben incluir datos. Si se utiliza para representar un intervalo de tiempo, solo deben incluir datos los campos necesarios para transmitir la duración.

El siguiente ejemplo describe el "1 de abril": una fecha relativa a un año no especificado, pero que sigue siendo un punto definido si el nivel de detalle de la medición es de un día.

  • ****0401******.000000+***
  • ****-04-01 ******:*** (Ilegal)

Ajuste del diferencia horaria con UTC y GMT

Los siguientes ejemplos describen cómo puede definir una hora sin zona horaria colocando asteriscos en el campo UUU después del signo más o menos:

  • 19980401135809.000000+***
  • 19980401135809.000000-***
  • 1998-04-01 13:58:09:*** (Ilegal)

Una aplicación interpreta una referencia de fecha y hora no zonificada a un cronómetro local y abstracto dentro del sistema operativo en ejecución. Por ejemplo, los ordenadores portátiles pueden tener relojes internos cuyos ajustes pueden corresponder o no a la zona horaria geográfica. Puede interpretar la hora no zonificada sustituyendo la zona horaria de la fuente de hora abstracta actual por la zona horaria local.

Debe prestar especial atención al significado del diferencia horaria con UTC con fechas y horas en las consultas. En general, las comparaciones de equivalencia, mayor que o menor que funcionan entre dos fechas y horas si las fechas y horas utilizan el mismo diferencia horaria con UTC. Cuando se trata de fechas y horas que se producen con diferentes diferencia horarias horarios, primero debe convertir las fechas y horas a GMT.

Las consultas que incluyen fechas y horas relativas con asteriscos en uno o más subcampos solo tienen sentido para WMI cuando se comparan por equivalencia. Además, WMI no permite utilizar asteriscos como comodines. En su lugar, WMI compara fechas y horas relativas carácter por carácter.

Los siguientes ejemplos describen dos fechas que una consulta WMI no considera iguales:

  • 19980401135809.000000+***
  • 19980401135809.000000+000

Convertir a FILETIME o formato VT_DATE

El CIM FECHA Y HORA formato se usa solo WMI. Puede convertir entre el formato WMI y el formato FILETIME o VT_DATE llamando a los métodos de la función SWbemFECHA Y HORA scripting objeto. Un FILETIME fecha y hora es un valor de 64 bits que utilizan los sistemas operativos Windows de 32 bits. El formato VT_DATE es un valor FECHA Y HORA variante de automatización utilizado por Visual Basic y ActiveX. La siguiente tabla enumera los métodos de conversión.

Method Descripción
SWbemFECHA Y HORA.GetFileTime Consigue un FECHA Y HORA valor en FILETIME formato.
SWbemFECHA Y HORA.GetVarDate Consigue un FECHA Y HORA valor en formato VT_DATE.
SWbemDateTime.SetFileTime Establece un FECHA Y HORA propiedad usando un FILETIME fecha como entrada.
SWbemFECHA Y HORA.SetVarDate Establece un FECHA Y HORA propiedad utilizando una fecha VT_DATE como entrada.

Formato de fecha y hora

Acerca de WMI

Tareas WMI: Fechas y horas

Formato de intervalo

SWbemObject.Put_

SWbemServicesEx.Put

SWbemDateTime

IWbemClassObject::Put

IWbemServices::PutClass