IIS时间格式调整:
(已解决)今天在用IIS7的时候发现一个关于时间格式的问题,当我在ASP中使用now()时间函数的时候,日期是以“/”来分隔,而不是以“-”来分隔的,使得我在运行程序的时候老出错,后来经过研究终于找到解方法。
这里我使用的操作系统是Winodws Vista Ultimate Service Pack 1,在ASP中使用now()时间函数出现的结果如下:
2009/3/17 8:11:51
而我想要的结果是2009-3-17 8:11:51,不知道为什么在IIS7中时间格式要以/来区分,如果有高手知道请留言,不过最终我通过修改注册表的方法解决了此问题,方法如下:
1、开始→运行→输入regedit,打开注册表编辑器,依次找到HKEY_USERS\.DEFAULT\Control Panel\International
2、在右边的窗口中找到sDate项,将其值改为-;再找到sShortDate项,将其值改为yyyy-M-d,
3、重新启动IIS,开始→运行→输入iisreset
按照以下方法未解决:
自从装了番茄花园的XP后,就发现问题一大堆。
首先是本地的几个站点不能正常运行,提示错误信息是时间格式错误。以前可以现在不行?看了一下,好象是多了一个“上午/下午”字符串。
网络上找了相关资料如下:
修改注册表
HKEY_USERS/.Default/Control Panel/International
HKEY_CURRENT_USER/Control Panel/International
iTime = 1
对应键值为HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/OLEAUT(OLEAUT有可能不存在,那就自己创建一个)
在该键下创建一个DWORD值 VarConversionLocaleSetting = 2
注:DWORD值在中文注册表编辑器里叫"双字节值"
操作完毕重新启动计算机...OK。
其他:为什么这个DWORD值为2呢?其实他有0,1,2值
0 -默认值,就是当前值。
1 -默认为HKEY_USERS/.default/Control Panel/International注册表配置单元中的系统默认设置,如果你的系统日期格式已经不标准了,那就还是相当于当前值。
2 -此格式被强制为使用系统默认的区域设置。
试过了,上面的方法都不行。不知道是不是我没有理解其中的精华。
想起自己以前用优化大师,在日期前面加了诸如“好好学习”的字样,是不是在优化大师也可以解决这个问题?
在个性设置里面删除“上午/下午”,重起。
还是不行。
但我终究还是搞定了的,不然也不会说了那么一堆的废话了。
“控制面板”- “日期、时间、语言和区域设置”- “更改数字、日期、和时间的格式” – “区域选项”- “自定义” – 时间
时间格式:HH:mm:ss (具体什么意思,上面有)
日期格式:yyyy-M-d
你可以试试换成其他的格式来看看效果。下面一段Code用来检测格式规范与否的。
IIS时间格式检验脚本:
<!----Test Time Begin---->
<%
tnow = now():oknow = cstr(tnow)
if oknow <> year(tnow) & "-" & month(tnow) & "-" & day(tnow) & " " & hour(tnow) & ":" & right(FormatNumber(minute(tnow)/100,2),2) & ":" & right(FormatNumber(second(tnow)/100,2),2) then oknow = oknow & " (日期格式不规范)"
%>
服务器时间: <%=oknow%>
<!----Test Time End---->
------------------------------------------
2006.09.06
再次碰到此问题,经测试后,发现。上面通过在“日期、时间、语言和区域设置”里面设置是无效的。
采用上面提到的:
对应键值为HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/OLEAUT(OLEAUT有可能不存在,那就自己创建一个)
在该键下创建一个DWORD值 VarConversionLocaleSetting = 2
重启IIS,就OK了。
重启IIS:
开始 - 运行
net stop iisadmin
iisreset