| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 
 | TFileStream *v ;
try
{
v = new TFileStream (ExtractFilePath(Application->ExeName) + "version.txt", fmCreate);
}
catch ( ... )
{
MessageDlg("Impossible de créer le fichier" + ExtractFilePath(Application->ExeName) + "version.txt", mtError, TMsgDlgButtons() << mbOK, 0);
return;
}
try {
IdHTTP1->Get(URL2,v);
}
catch( ... )
{
MessageDlg("Impossible de se connecter au serveur. Votre connexion internet est fermée ou le serveur est indisponible momentanément.", mtError, TMsgDlgButtons() << mbOK, 0);
return;
}
delete v;
Memo4->Lines->LoadFromFile(ExtractFilePath(Application->ExeName) + "version.txt");
if (FileExists(ExtractFilePath(Application->ExeName) + "version.txt") == true)
   {
   if (DeleteFile(ExtractFilePath(Application->ExeName) + "version.txt") == false)
      {
      MessageDlg("Une erreur c'est produite lors de la mise à jour. Veuillez procéder à celle-ci manuellement ou effacer le fichier " + ExtractFilePath(Application->ExeName) + "version.txt.", mtError, TMsgDlgButtons() << mbOK, 0);
      return;
      }
   }
if (Version != Memo4->Text)
   {
   MessageDlg("Votre logiciel est en version " + Version + ". La version actuelle est " + Memo4->Text + ". Vous devez mettre à jour votre logiciel pour pouvoir continuer.", mtWarning, TMsgDlgButtons() << mbOK, 0);
   Memo4->Text = "";
   if (FileExists(ExtractFilePath(Application->ExeName) + "updater.zip") == true)
      {
      if (DeleteFile(ExtractFilePath(Application->ExeName) + "updater.zip") == false)
         {
         MessageDlg("Une erreur c'est produite lors de la mise à jour. Veuillez procéder à celle-ci manuellement ou effacer le fichier " + ExtractFilePath(Application->ExeName) + "updater.zip.", mtError, TMsgDlgButtons() << mbOK, 0);
         return;
         }
      }
   if (FileExists(ExtractFilePath(Application->ExeName) + "updater.exe") == true)
      {
      if (DeleteFile(ExtractFilePath(Application->ExeName) + "updater.exe") == false)
         {
         MessageDlg("Une erreur c'est produite lors de la mise à jour. Veuillez procéder à celle-ci manuellement ou effacer le fichier " + ExtractFilePath(Application->ExeName) + "updater.exe.", mtError, TMsgDlgButtons() << mbOK, 0);
         return;
         }
      }
   TFileStream *f ;
   try
   {
   f = new TFileStream (ExtractFilePath(Application->ExeName) + "updater.zip", fmCreate);
   }
   catch ( ... )
   {
   MessageDlg("Impossible de créer le fichier" + ExtractFilePath(Application->ExeName) + "updater.zip", mtError, TMsgDlgButtons() << mbOK, 0);
   return;
   }
   try {
   IdHTTP1->Get(URLup,f);
   }
   catch( ... )
   {
   MessageDlg("Impossible de se connecter au serveur. Votre connexion internet est fermée ou le serveur est indisponible momentanément.", mtError, TMsgDlgButtons() << mbOK, 0);
   return;
   }
   delete f;
   try {
   AbUnZipper1->FileName = ExtractFilePath(Application->ExeName) + "updater.zip";
   AbUnZipper1->ExtractFiles("*.*");
   AbUnZipper1->FileName = "";
   }
   catch ( ... )
   {
   MessageDlg("Fichier corrompue. Veuillez relancer la mise à jour et en cas de renouvellement de cette erreur, essayer plus tard ou téléphonez à la société.", mtError, TMsgDlgButtons() << mbOK, 0);
   return;
   }
   if (DeleteFile(ExtractFilePath(Application->ExeName) + "updater.zip") == false)
      {
      MessageDlg("Impossible d'effacer le fichier " + ExtractFilePath(Application->ExeName) + "updater.zip", mtError, TMsgDlgButtons() << mbOK, 0);
      }
   AnsiString Updater = ExtractFilePath(Application->ExeName) + "updater.exe";
   ShellExecute(Handle,"open",Updater.c_str(),0,0,SW_SHOW);
   Form1->Close();
   } | 
Partager