一個GUI程序,程序界面有實時日期時間顯示,通過雙擊桌面圖標(biāo)運行時,時間顯示正常,是24小時制
但通過DOS命令啟動時,時間總是顯示成12小時格式,如:“2013-11-02 上午 10:12:23”等
不管是設(shè)置控制面板里的區(qū)域與語言選項的自定義時間格式,還是按照網(wǎng)上說的修改HKEY_CURRENT_USER\Control Panel\International下的sTimeFormat的值,都無法使其顯示24小時格式。
當(dāng)把區(qū)域-標(biāo)準(zhǔn)和格式選擇成瑞典語時,時間倒是顯示對了,是24小時格式的,但打開程序,所有的漢字都變成了“?”
迷茫中,不斷探索,想只要瑞典語能顯示,中國語也一定能顯示,
搜索注冊表,發(fā)現(xiàn)在HKEY_USER的[HKEY_USERS\.DEFAULT\Control Panel\International]下也有sTimeFormat鍵
但修改后還是無效,迷茫很久,查看其中的鍵值都是修改語言格式啥的,想肯定在這里面了,發(fā)現(xiàn)一個鍵itime=0
試著將其鍵值改為1,即:itime=1;F5刷新,哈哈,ok。
修改后導(dǎo)出的鍵值如下:
Windows Registry Editor Version 5.00
[HKEY_USERS\.DEFAULT\Control Panel\International]
"iCountry"="86"
"iCurrDigits"="0"
"iCurrency"="0"
"iDate"="2"
"iDigits"="2"
"iLZero"="1"
"iMeasure"="0"
"iNegCurr"="1"
"iTime"="1"
"iTLZero"="1"
"Locale"="00000804"
"s1159"="上午"
"s2359"="下午"
"sCountry"="中國"
"sCurrency"="¥"
"sDate"="-"
"sDecimal"="."
"sLanguage"="CHS"
"sList"=","
"sLongDate"="yyyy'年'MM'月'dd'日'"
"sShortDate"="yyyy-MM-dd"
"sThousand"=","
"sTime"=":"
"sLongDate16"="dddd', 'MMMM' 'dd', 'yyyy"
"iTimePrefix"="1"
"iCentury"="0"
"iDayLZero"="1"
"iMonLZero"="1"
"iChinaYear"="0"
"iCalendar"="1"
"sTimeFormat"="H:mm:ss"
[HKEY_USERS\.DEFAULT\Control Panel\International\Geo]
"Nation"="45"