您现在的位置是:首页 >

嵌入式程序在线升级 让自己学会写的一个在线升级的程序

火烧 2022-12-30 05:21:58 1063
让自己学会写的一个在线升级的程序   void CU dateDlg::O Butto Dou date   {    // 读取升级文件  CFileStatu rStatu   CStri g z

让自己学会写的一个在线升级的程序  

嵌入式程序在线升级 让自己学会写的一个在线升级的程序
  void CUpdateDlg::OnButtonDoupdate()  {    // 读取升级文件  CFileStatus rStatus;  CString szIniData;  CString inFile;  CString tmp;    inFile=m_szPath+ \update ini ;    CFile UpdateFile;  UpdateFile Open( inFile CFile::modeRead);  UpdateFile GetStatus(inFile rStatus);  UpdateFile Read(szIniData GetBuffer(rStatus m_size) rStatus m_size);  UpdateFile Close();    CStringArray arType;  CStringArray arVersion;  for(int i= ;i<= ;i+= ){  AfxExtractSubString(tmp szIniData i n );  tmp TrimRight();  tmp TrimRight();  arType Add(tmp);  }  for(int j= ;j<= ;j+= ){  AfxExtractSubString(tmp szIniData j n );  tmp TrimRight();  tmp TrimRight();  arVersion Add(tmp);  }    GetDlgItem(IDC_BUTTON_DOUPDATE) >EnableWindow(FALSE);    CProgressCtrl* pBar = (CProgressCtrl*)GetDlgItem(IDC_PROGRESS_UPDATE);  pBar >SetPos( );  m_szEditMessage = rn取得网络升级地址rn +ServerUrl;  UpdateData(FALSE);    CInternetSession mySession(NULL );  CHttpFile* myHttpFile=NULL;  BOOL bIsNewer = FALSE;  CString myData;  CString myUrl;  CString m_SiteRec;  myUrl = ServerUrl+ ?pro=update ;  myHttpFile=(CHttpFile*)mySession OpenURL(myUrl);  while(myHttpFile >ReadString(myData)){m_SiteRec = myData;}  myHttpFile >Close();  mySession Close();    if(m_SiteRec== ok ){  pBar >SetPos( );  m_szEditMessage = rn已经连通 rn +m_szEditMessage;  UpdateData(FALSE);    for(int k= ;k< ;k++){  CInternetSession mySession(NULL );  CHttpFile* myHttpFile=NULL;  m_SiteRec Empty();  myUrl = ServerUrl+ ?pro=update&module= +arType[k]+ &version= +arVersion[k];  myHttpFile=(CHttpFile*)mySession OpenURL(myUrl);  while(myHttpFile >ReadString(myData)){m_SiteRec += myData;}  if(m_SiteRec != ok ){  CString inFile;  inFile=m_szPath+ \data\ +arType[k];  CFile NetFile;  NetFile Open( inFile CFile::modeCreate | CFile::modeWrite);  NetFile Write( m_SiteRec m_SiteRec GetLength());  NetFile Close();  bIsNewer = TRUE;  }  pBar >SetPos((k+ )*( )+ );  m_szEditMessage = rn检查 +arType[k]+ 文件  成功!rn +m_szEditMessage;  UpdateData(FALSE);  myHttpFile >Close();  mySession Close();  }    if(bIsNewer){  ::MessageBox(NULL 文件已经更新成功! NULL MB_ICONASTERISK);  }else{  ::MessageBox(NULL 您的数据文件已经是最新版本了! NULL MB_ICONASTERISK);  }  }else{  ::MessageBox(NULL 没有连接网络或者找不到升级服务器 请检查 NULL MB_ICONASTERISK);  pBar >SetPos( );  }    // 下面是完成了   GetDlgItem(IDCANCEL) >ShowWindow(SW_HIDE);  GetDlgItem(IDOK) >ShowWindow(SW_SHOW);  GetDlgItem(IDOK) >SetFocus();  } lishixinzhi/Article/program/Java/hx/201311/25747  
永远跟党走
  • 如果你觉得本站很棒,可以通过扫码支付打赏哦!

    • 微信收款码
    • 支付宝收款码