Help and Support

Id. de artículo: 306044 - Última revisión: martes, 10 de enero de 2006 - Versión: 4.2

Comportamiento de formato de fecha y hora difiere cuando tiene acceso desde páginas Active Server

En esta página

Expandir todo | Contraer todo

Resumen

Cuando se utiliza el ahora , fecha o tiempo funciones de Active Server (ASP), los formatos de fecha y hora varían dependiendo de parámetros como el usuario suplantación, el usuario de autenticación, el usuario ha iniciado la sesión y la versión del sistema operativo en el servidor.

Nota A menos que específicamente suplantar a algún usuario, el usuario suplantación es el mismo que el usuario de autenticación. Además, el usuario ha iniciado la sesión hace referencia a la persona que ha iniciado sesión en el servidor.

Más información

Según los requisitos del cliente, la manera en que se leen la configuración regional (principalmente el formato de fecha y hora) desde el sistema ha cambiado en las versiones recientes del sistema operativo a proporcionan a los desarrolladores más control de esta característica.

Aunque la configuración regional diferente funcionar en cada uno de los sistemas operativos mencionados anteriormente (excepto Windows NT 4.0), tienen un comportamiento común: la configuración regional de funcionan del mismo en todas versiones de sistema operativo cuando nadie esté conectado físicamente al sistema.

El formato de fecha/hora cuando tiene acceso desde ASP

IIS 4.0 (Windows NT 4.0)

Cuando nadie esté conectado físicamente al servidor, IIS lee el formato de fecha y hora (y otra configuración regional) el sistema de configuración predeterminada, específicamente desde el archivo Locale.nls. Puede cambiar esta configuración en la sección de configuración regional del panel de control, tras el cual se debe reiniciar el equipo.

Cuando alguien inicia sesión en el equipo, IIS lee configuración regional del usuario ha iniciado la sesión. Esta configuración se leen de la configuración de perfil de usuario en el subárbol del Registro HKEY_CURRENT_USER de Control Panel o internacional . Puede cambiar esta configuración en la sección de configuración regional del panel de control, tras el cual se debe reiniciar el equipo.

IIS 5.0 (Windows 2000 y Windows 2000 Service Pack 1)

Durante la instalación del sistema operativo, la configuración regional opciones son especificadas y escribe en el registro del sistema en el Panel HKEY_USERS/.Default/Control/internacional subárbol.

En general, cuando se solicita una página ASP que muestra la fecha y hora, IIS primero determina si el perfil del usuario de autenticación se carga en el registro. Si lo es, IIS lee el identificador de idioma de ese perfil de usuario y, a continuación, busca en la caché de IIS (si se almacenan en caché la configuración regional para esta configuración regional). Si en la caché, IIS atiende la solicitud con el formato almacenado en caché. Si la configuración regional no se encuentra en los valores almacenados en caché, se lee el formato de fecha y hora de configuración de perfil del usuario en el subárbol del Registro HKEY_CURRENT_USER de Control Panel o internacional . La información a continuación, se almacena en caché y IIS muestra la página ASP con el formato de fecha y hora en caché.

Si el usuario de autenticación no tiene un perfil de usuario, IIS lee el identificador de configuración regional del sistema predeterminados y, a continuación, busca la configuración regional en caché para esa configuración regional. Si se encuentran los valores almacenados en caché, IIS sirve la solicitud con el formato almacenado en caché; en caso contrario, IIS lee el formato del sistema configuración predeterminada en el subárbol de registro HKEY_USERS/.Default/Control Panel o internacional . La información a continuación, se almacena en caché y IIS muestra la página ASP con el formato de fecha y hora en caché.

Sin embargo, hay un problema con esta lógica. Para cada solicitud, IIS comprueba si el formato de fecha y hora se almacenarán caso de identificador de idioma resultante. Si IIS encuentra un formato en caché, lo utiliza. El problema se produce si el usuario se desplaza hasta esta página tiene primero un identificador de configuración regional que es el mismo que el identificador de configuración regional previsto para utilizarse con un ASP página, pero su fecha de formato es diferente del formato de fecha prevista para utilizarse con una página ASP. En esta situación, la fecha en caché formato para que ID. regional es un formato incorrecto y se proporcionarán al resto de los usuarios solicitar esta página.

Cuando ningún usuario físicamente es iniciado sesión en el servidor, IIS lee el formato de fecha y hora, así como otra configuración regional, de la ubicación del registro anterior, no desde el archivo Locale.nls tal como se hace en Windows NT 4.0.

IIS 5.0 (Windows 2000 Service Pack 2 y versiones posterior)

En Windows 2000 Service Pack 2 (SP2), el comportamiento predeterminado es como se mencionó anteriormente. Sin embargo, también puede personalizar la configuración: puede cambiar el componente OLEAUT base o cambiar IIS para que puede habilitar este cambio en OLEAUT.

Puede establecer globalmente la entrada del registro para OLEAUT. No se reemplaza un proceso que se establece explícitamente la opción mediante la llamada expuesta. Por lo tanto, si establece el siguiente valor IIS, reemplazar el OLEAUT configuración.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLEAUT
VarConversionLocaleSetting = 0,1,2 (DWORD)
Nota La clave OLEAUT no existe. Si no lo hace, debe crear primero la clave.

También puede establecer el valor de IIS, que también reemplaza la configuración global de OLEAUT. Además, IIS llamará a esta interfaz de programación de aplicaciones (API) de OLEAUT o si no se establece la entrada de registro.
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\InetInfo\Parameters
SetVarConversionLocaleSetting
= 0,1,2 (DWORD)
Los valores de 0, 1 y 2 son los mismos para OLEAUT e IIS y se definen como sigue:
  • 0 - El comportamiento predeterminado, como se indicó anteriormente. Este formato es completamente aleatorio. Se basa en el último usuario o proceso que establece la caché.
  • 1 El formato se basa en la identidad actual del subproceso que solicita estos valores (realiza la llamada en el archivo Oleaut32.dll). En IIS, ésta es la configuración de perfil de usuario de autenticación porque IIS suplanta al usuario autentica de forma predeterminada. Si autenticación del perfil del usuario no existe o no está cargado en el registro, el valor predeterminado es la configuración predeterminada de sistema desde el subárbol de registro HKEY_USERS\.default\Control Panel\International .

    Puede configurar la aplicación Web de tal manera que el usuario suplantado en un subproceso que solicita estos formatos siempre puede ser el mismo usuario; por lo tanto, establecer un formato coherente. Por ejemplo, si utiliza el acceso anónimo en una página ASP, se devuelve el mismo formato de fecha, independientemente de quién está registrado en el sistema y qué usuario real está solicitando la página.
  • 2 El formato se obliga a utilizar la configuración regional predeterminada de sistema. La configuración predeterminada de sistema se establece para un equipo en el reinicio. Para modificar la configuración predeterminada del sistema, seleccione una configuración regional nueva y, a continuación, haga clic en Predeterminado en la herramienta de configuración regional en el panel de control. Debe reiniciar el equipo para que este cambio surta efecto. En este caso, el formato de fecha no es leer desde el registro pero desde el archivo Locale.nls para esa configuración regional.

    Nota Cuando cambia la configuración regional predeterminada, se cambian todas las configuraciones regionales, como moneda, hora y fecha. No hay ninguna forma para modificar una configuración específica dentro de la configuración regional.

IIS 5.0 (ASP.NET)

El comportamiento básico y los fundamentos permanecen igual en ASP.NET 1.0. Por ejemplo, llamadas a las funciones Response.Write(Now()) y Response.Write(Date()) sigue el mismo comportan como lo hacen en ASP clásica para ese sistema operativo. Sin embargo, existen funciones de formato especial en ASP.NET para dar formato a la fecha y hora y otra información de referencia cultural. Para obtener más información, consulte la documentación de MSDN para CultureInfo , RegionInfo y el espacio de nombres System.Globalization . En un equipo que ejecuta Windows 2000 y donde está instalado ASP.NET 1.1, se carga el perfil de usuario de la identidad del proceso ASPNET y ese perfil se utiliza para configuración regional.

Información relacionada

Si desea un formato de fecha y hora para la configuración regional difiere de la configuración regional predeterminada del sistema, es mejor utilizar el código siguiente en una página ASP para establecer el formato:
<%    Session.LCID=2058
      'OR use the VBScript SetLocale function to set the locale.
      Response.Write FormatDateTime( Now(), 2)
      'The Constant 2 is for obtaining the vbShortDate.
%>
				
este artículo se centra principalmente en el formato de fecha y hora. El resto de la configuración regional no puede se comportarán del mismo modo que el formato de fecha/hora como consecuencia de la forma en que IIS almacena en caché el formato de fecha y hora. Por ejemplo, la divisa formato también depende de la configuración regional pero sigue la lógica que se especifica con un valor de 1 en "IIS 5.0 (Windows 2000 Service Pack 2 y posteriores)" sección.

Acceso al formato de fecha y hora desde un servicio, como Internet Information Services (IIS) es diferente de cómo otros procesos independientes (no de servicios) acceso a él. En general, la configuración regional de un programa independiente se accede desde el perfil de usuario del usuario de iniciar dicha aplicación, que normalmente es la misma cuenta como el usuario ha iniciado la sesión.

Puesto que los servicios se ejecutan incluso cuando nadie conectado al equipo, debe ser una forma para recuperar la configuración regional cuando ningún usuario inicia sesión en el equipo. La configuración predeterminada del sistema el subárbol de registro HKEY_USERS/.Default/Control Panel/internacional puede recuperar la configuración regional.

Cómo tener acceso a esta configuración regional depende ciertos parámetros cuando alguien ha iniciado sesión en el sistema y los comportamientos varían para distintos sistemas operativos.

Referencias

Para obtener más información, haga clic en los números de artículo siguientes para verlos en Microsoft Knowledge Base:
264063  (http://support.microsoft.com/kb/264063/ ) Pueden funciones VBScript Date y Time no tenga formato correctamente en configuraciones regionales que no sean inglés EE.UU.
271587  (http://support.microsoft.com/kb/271587/ ) Las páginas ASP utilizan formato de fecha y hora en función de usuario que ha iniciado la sesión
229690  (http://support.microsoft.com/kb/229690/ ) Cómo establecer el identificador de configuración regional ASP por la configuración de idioma del explorador
218964  (http://support.microsoft.com/kb/218964/ ) PRB: Formatos de fecha y hora de VBScript cambian con sesión de usuario

La información de este artículo se refiere a:
  • Microsoft Active Server Pages 2.0
  • Microsoft Active Server Pages 3.0
  • Microsoft Internet Information Server 4.0 sobre las siguientes plataformas
    • Service Pack 6.a de Microsoft Windows NT 4.0
  • Microsoft Internet Information Services 5.0 sobre las siguientes plataformas
    • Service Pack 1 de Microsoft Windows 2000
    • Service Pack 2 de Microsoft Windows 2000
Palabras clave: 
kbmt kbinfo kbscript KB306044 KbMtes
Traducción automáticaTraducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 306044  (http://support.microsoft.com/kb/306044/en-us/ )

Seleccione idioma