如何修改系统时间显示格式

东坡下载 2013年11月04日 05:23:15

      一个GUI程序,程序界面有实时日期时间显示,通过双击桌面图标运行时,时间显示正常,是24小时制
      但通过DOS命令启动时,时间总是显示成12小时格式,如:“2013-11-02 上午 10:12:23”等
      不管是设置控制面板里的区域与语言选项的自定义时间格式,还是按照网上说的修改HKEY_CURRENT_USER\Control Panel\International下的sTimeFormat的值,都无法使其显示24小时格式。
      当把区域-标准和格式选择成瑞典语时,时间倒是显示对了,是24小时格式的,但打开程序,所有的汉字都变成了“?”
      迷茫中,不断探索,想只要瑞典语能显示,中国语也一定能显示,
      搜索注册表,发现在HKEY_USER的[HKEY_USERS\.DEFAULT\Control Panel\International]下也有sTimeFormat键
      但修改后还是无效,迷茫很久,查看其中的键值都是修改语言格式啥的,想肯定在这里面了,发现一个键itime=0
      试着将其键值改为1,即:itime=1;F5刷新,哈哈,ok。
      修改后导出的键值如下:
      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"