设置系统的时间/日期

一、调用系统时间/日期对话框

方法一:AfxOleInit();      初始化com库。   

IShellDispatch*   pdisp;  
   
  HRESULT   hr   =   CoCreateInstance(CLSID_Shell,   NULL,   CLSCTX_SERVER,   IID_IDispatch,   (void**)&pdisp);  
  //if(SUCCEEDED(hr))  
  {  
  //断在这儿进不来呀 ?  
    pdisp->SetTime();  
    pdisp->Release();  
  }   

方法二:

ShellExecute(this->m_hWnd,"open","rundll32.exe","shell32.dll,Control_RunDLL   timedate.cpl,,0","",   SW_SHOW   );
 

二、设置时间

1、setsystemtime设置的时间是GMT时间(国际协同时间),它与北京的时间相差8小时

   SYSTEMTIME systemTime;

 if(systemTime.wHour>=8)
          systemTime.wHour-=8;
 else systemTime.wHour+=16;

SetSystemTime(&systemTime);

2、或者用SetLocalTime(&systemTime);

三、设置时间格式:

 GetLocaleInfo  
  可以获得日期和时间的格式  
   
  SetLocaleInfo  
  可以设置日期和时间的格式  
   
  //   将时间设置成12小时的格式,就是带am/pm(上午/下午)  
  SetLocaleInfo   (LOCALE_SYSTEM_DEFAULT,   LOCALE_ITIME,   _T   ("0),   2);  
   
  //   将时间设置成24小时的格式  
  SetLocaleInfo   (LOCALE_SYSTEM_DEFAULT,   LOCALE_ITIME,   _T   ("1),   2);  
   
  //   AM/PM出现在时间的后面  
  SetLocaleInfo   (LOCALE_SYSTEM_DEFAULT,   LOCALE_ITIMEMARKPOSN,_T   ("0),   2);  
   
  //   AM/PM出现在时间的前面  
  SetLocaleInfo   (LOCALE_SYSTEM_DEFAULT,   LOCALE_ITIMEMARKPOSN,_T   ("1),   2);  
   
  可以设置的还有  
  LOCALE_IDATE   设置短日期格式  
  0       对应的格式为月-日-年  
  1       对应的格式为日-月-年  
  2       对应的格式为年-月-日  
   
  LOCALE_ILDATE   设置长日期格式  
  0       对应的格式为月-日-年  
  1       对应的格式为日-月-年  
  2       对应的格式为年-月-日  
   
  LOCALE_SDATE   设置日期的分隔符,如   /   -   之类的  
   
  LOCALE_STIME   设置时间的分隔符,如   :    
   
  LOCALE_STIMEFORMAT   设置时间的显示格式   如   HH:mm:ss  
   
  LOCALE_SLONGDATE     设置长时间的显示格式,如   yyyy/MM/dd  
   
  具体的去msdn中查吧,很详细的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值