==========================================================
 Legeni Data Sync & Backup - VERSION LEGACY
 Compatible Windows Server 2003 (SP2+) et Windows 7
 (c) 2026 Legeni Consulting - Licence MIT
==========================================================

1) PREREQUIS
-------------
- .NET Framework 3.5 SP1 doit etre installe sur le poste.
  * Windows 7 : deja present par defaut (aucune action).
  * Windows Server 2003 : installer le package ".NET Framework 3.5 SP1"
    si absent (Microsoft Download Center - recherche "dotnetfx35").
  Verification rapide : Panneau de configuration > Programmes >
  rechercher "Microsoft .NET Framework 3.5".

2) INSTALLATION
----------------
  Double-cliquez sur Installer.bat (aucun droit administrateur requis,
  aucune dependance a PowerShell). Cree un raccourci Bureau + Menu
  Demarrer. Pour recompiler depuis la source : Compiler.bat.
  Desinstallation : Desinstaller.bat.

3) CORRECTIFS APPLIQUES SUITE AUX TESTS SUR SERVEUR 2003 REEL
------------------------------------------------------------------
  - **La tache planifiee ne se declenchait JAMAIS a l'heure prevue**
    alors que "Sauvegarder maintenant" fonctionnait. Cause trouvee et
    prouvee : le chemin de l'application n'etait pas entoure de
    guillemets dans la commande envoyee au Planificateur. Comme ce
    chemin contient des espaces (ex. "C:\Program Files\..." ou
    "C:\Documents and Settings\..."), Windows tentait de lancer
    "C:\Program" et echouait silencieusement (code 0x800700C1).
    Verifie avant/apres : avant = code -2147024703 et aucune
    sauvegarde ; apres = code 0 et archive bien creee.

  - **Compression d'un dossier en cours d'utilisation** : le logiciel
    COPIE desormais d'abord les fichiers dans un dossier temporaire
    (en mode lecture partagee, ce qui fonctionne meme si une base de
    donnees a les fichiers ouverts), PUIS compresse cette copie stable,
    puis supprime la copie. Avantage : meme si la base continue
    d'ecrire pendant la compression (qui peut durer plusieurs minutes
    sur de gros volumes), l'archive reste coherente. Le journal indique
    "Copie preparatoire: N fichier(s)" puis "Compression de la copie".
    Les fichiers impossibles a lire sont signales individuellement et
    ignores, sans faire echouer le reste.

  - **Fichiers verrouilles en EXCLUSIF : option "Cliche VSS"** (nouveau)
    Certaines applications ouvrent leurs fichiers en verrou exclusif :
    ils sont alors illisibles par TOUTE methode de copie classique.
    Cochez "Cliche VSS" (section 2 de l'ecran principal) pour que le
    logiciel demande a Windows un cliche instantane du volume (Volume
    Shadow Copy) : Windows fige une image coherente du disque, et les
    fichiers se lisent depuis cette image sans se soucier des verrous.
    Le cliche est supprime automatiquement en fin de sauvegarde.

    CONDITIONS :
      * Le logiciel doit etre lance EN TANT QU'ADMINISTRATEUR.
        (clic droit sur le raccourci > "Executer en tant qu'admin" ;
         pour la tache planifiee, le compte indique doit etre admin)
      * Le service "Cliche instantane de volume" (VSS) doit pouvoir
        demarrer (il est en mode Manuel par defaut, c'est suffisant).
      * Uniquement pour un dossier source sur un disque LOCAL. Pour un
        dossier reseau (\\SERVEUR\...), le cliche doit etre fait sur le
        serveur qui heberge les fichiers, pas depuis le poste client.
      * Sur Windows Server 2003, c'est l'outil "vssadmin" qui est
        utilise (present sur les editions Serveur).

    Si l'une de ces conditions manque, AUCUNE erreur bloquante : le
    logiciel l'indique dans le journal et bascule automatiquement sur
    la copie classique. Le journal precise combien de fichiers ont ete
    lus via le cliche : "Copie preparatoire: 12 fichier(s) (dont 12 via
    cliche VSS)".

Egalement corriges precedemment sur retour du terrain :
  - Le clic sur "Activer la planification" restait bloque en attendant
    un mot de passe (Server 2003 utilise l'ancien Planificateur de
    taches 1.0, qui exige toujours des identifiants stockes - contraire-
    ment a Windows Vista/7+). Une boite de dialogue apparait maintenant
    systematiquement pour saisir ce mot de passe avant de planifier.
  - Les caracteres accentues dans les messages d'erreur du Planificateur
    etaient corrompus (page de code OEM vs ANSI) - corrige.
  - Fermer une fenetre (Synchronisation, application) pendant qu'une
    operation tournait encore en arriere-plan pouvait faire fermer toute
    l'application brutalement (crash natif Windows). Ces fenetres
    refusent maintenant de se fermer tant qu'une operation est active,
    avec un message clair a la place.

4) CE QUI FONCTIONNE PLEINEMENT (teste sur ce poste, .NET 3.5 actif)
----------------------------------------------------------------------
  - Sauvegarde vers dossier local / NAS / partage reseau (\\SERVEUR\...)
  - Compression ZIP (implementation maison compatible .NET 3.5, verifiee
    lisible par l'Explorateur Windows / outils ZIP standards)
  - Chiffrement AES-256 + verification d'integrite SHA-256
    -> Fichiers 100% compatibles avec la version moderne (.NET 4.8) :
       un fichier chiffre par l'une se dechiffre avec l'autre. Teste.
  - Planification automatique (Planificateur de taches Windows)
  - Synchronisation bidirectionnelle / miroir, versionnage, historique,
    jobs multiples, copie delta par blocs
  - FTP / FTPS (sauvegarde vers un serveur FTP)
  - Restauration / relocalisation vers un nouveau serveur

5) CE QUI EST LIMITE : FONCTIONS DEPENDANT DE HTTPS/TLS 1.2
--------------------------------------------------------------
  Windows Server 2003 ne sait parler que TLS 1.0 au niveau systeme
  (limite du systeme d'exploitation lui-meme, pas du logiciel : Microsoft
  n'a jamais ajoute TLS 1.2 a Server 2003). Windows 7 est dans le meme
  cas SAUF si une mise a jour specifique (KB3140245) a ete appliquee.
  Or les services web modernes (dont notre plateforme et Dropbox)
  exigent TLS 1.2 minimum. Consequence :

  - Console web (remontee d'etat /api/report)  : NE FONCTIONNERA PAS
    sur Server 2003. Incertain sur Windows 7 (depend des mises a jour
    appliquees).
  - Dropbox                                    : idem.
  - WebDAV en HTTPS                            : idem (WebDAV en HTTP
    simple, sans chiffrement, fonctionnerait si votre serveur le
    propose - deconseille sur un reseau non fiable).

  Ces fonctions restent presentes dans l'interface (pour ne pas priver
  les utilisateurs de Windows 7 recent/patche) mais echoueront
  proprement avec un message d'erreur sur un systeme non compatible -
  ce n'est pas un bug, c'est une limite du systeme d'exploitation hote.

  L'usage principal vise par cette version (sauvegarde d'un dossier de
  base de donnees d'un serveur ancien vers un NAS/serveur de fichiers)
  ne depend d'AUCUNE de ces fonctions HTTPS et fonctionne pleinement.

6) LIMITE DE VERIFICATION - IMPORTANT
----------------------------------------
  Cette version a deja ete testee sur un vrai Windows Server 2003, ce qui
  a permis de trouver et corriger 3 problemes reels (planification
  bloquee, accents corrompus, fermeture de fenetre risquant de faire
  quitter l'application - voir section 3). Le lot de correctifs le plus
  recent (contre la fermeture pendant une operation active) a ete
  verifie ici en local (compilation .NET 3.5, tests automatises) mais
  PAS ENCORE reteste sur le Server 2003 reel. Un nouveau test rapide sur
  le systeme cible (ouvrir/fermer l'app pendant une sauvegarde ou une
  synchronisation) est recommande avant de considerer le sujet clos.

7) DETAILS TECHNIQUES (pour information)
--------------------------------------------
  - Cible : .NET Framework 3.5 SP1, plateforme x86 (32 bits, compatible
    avec les editions x86 ET x64 de Windows via WOW64).
  - System.IO.Compression.ZipFile/ZipArchive (API .NET 4.5+) remplaces
    par une implementation ZIP maison (DeflateStream, disponible depuis
    .NET 2.0, + CRC32 manuel) : voir src/MiniZip.cs.
  - System.Security.Cryptography.Aes (API .NET 4.6+) remplace par
    RijndaelManaged (BlockSize=128, identique techniquement a AES-256).
  - PBKDF2-SHA256 (Rfc2898DeriveBytes+SHA256 n'existe qu'a partir de
    .NET 4.6) reimplemente manuellement (HMACSHA256), verifie produire
    des cles identiques a l'implementation .NET 4.8 native.
  - string.IsNullOrWhiteSpace (.NET 4.0+) et Stream.CopyTo (.NET 4.0+)
    remplaces par des equivalents compatibles .NET 2.0/3.5.
  - Installeur en batch + VBScript (pas de dependance a PowerShell,
    absent par defaut de Windows Server 2003).

8) OU SONT LES FICHIERS
---------------------------
  - Application installee : %APPDATA%\LegeniDataSync\
  - Configuration/journaux : dossier "Donnees d'application locales"
    de l'utilisateur (resolu automatiquement par Windows quelle que
    soit la version de l'OS).
  - Tache planifiee : "LegeniDataSync" (Planificateur de taches).
