新上的一台服務器出現了一個現象:ASP程序中,調用函數Now(),顯示的時間總是形如“2009-07-12 上午 08:12:56 ”這樣的,總顯示“上午”和“下午”,解決過程及最終解決方法如下:
- 這麼顯示,一般都是因為服務器就是如此設置的,先查看時間格式:直接雙擊任務欄中時間,在彈出的“時間和日期”中果然顯示了上午下午這樣的字樣,那就進入下一步設置;
- 打開控制面板,選擇“區域和語言選項”,在“區域選項”中選擇自定義,選擇“時間”標簽,將時間格式設置為“H:mm:ss ”即24小時制時間,將下面的AM符號和PM符號後的值清空,單擊“確定”保存設置;
- 此時再打開“時間和日期”,時間中已經不顯示上午和下午的字樣了,進入下一步檢驗;
- 重啟IIS後,執行ASP函數Now(),結果讓我很失望,還是顯示了大大的“下午”兩個字,那現在就不是這個問題了,應該就是沒有使用系統區域設置的時間;
- 強制ASP時間使用使用區域設置裡面的時間格式,方法如下:打開注冊表編輯器,進入HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\,建立OLEAUT的項,在該項下建立名稱為“VarConversionLocaleSetting”的DWORD值,數據設置為2,設置完成後退出注冊表編輯器;
- 重啟IIS後,再次測試ASP函數Now(),現在已經成功的不再顯示該死的“上午”“下午”字樣了。