WinSparkle est une bibliothèque de mise à jour logicielle plug-and-Forbit pour les applications Windows. Il est fortement inspiré par le framework Sparkle pour OS X écrit par Andy Matuschak et autres, au point de partager le même format de mises à jour (appcast) et d'avoir une interface utilisateur très similaire.
Voir https://winsparkle.org pour plus d'informations sur Winparkle.
Documentation: Wiki et l'en-tête WinSparkle.h.
La façon la plus simple d'utiliser WinSparkle est de télécharger le binaire WinSparkle.dll prédéfini à partir des sorties ou d'utiliser le package WinSparkle Nuget. Des binaires prédéfinis sont disponibles pour les plates-formes X86, X64 et ARM64.
WinSparkle a une API C qui facilite l'utilisation de nombreuses langues modernes en plus de C / C ++. En plus de cela, plusieurs reliures pour les langues populaires existent:
Si vous préférez construire vous-même Winparkle, vous pouvez le faire. Vous devrez compiler à partir d'une caisse GIT; Certaines dépendances sont incluses comme sous-modules Git.
Vérifiez les sources et initialisez les sous-modules:
$ git clone https://github.com/vslavik/winsparkle.git
$ cd winsparkle
$ git submodule init
$ git submodule update
Pour compiler la bibliothèque, ouvrez simplement WinSparkle.sln (ou celui correspondant à votre version de compilateur) et créez-le.
Pour le moment, des projets pour Visual C ++ (2010 et UP) sont fournis, vous aurez donc besoin de cela (Express / Community Edition suffit). En principe, il n'y a rien dans le code qui l'empêche d'être compilé par d'autres compilateurs.
Il existe également des fichiers de construction CMake non pris en charge dans le répertoire CMake.
WinSparkle utilise exactement le même mécanisme pour la signature et la vérification de la signature comme le fait Sparkle. Ses outils et méthodes de vérification sont entièrement compatibles.
Vous pouvez utiliser n'importe quel moyen compatible pour signer votre mise à jour. Pour y parvenir, vous devez signer SHA1 (sous forme binaire) de votre fichier de mise à jour avec la clé privée DSA, en utilisant SHA1 Digest.
WinSparkle fournit des outils pour générer des clés et signer la mise à jour à l'aide d'OpenSSL.
Vous avez besoin openssl.exe disponible sur Windows pour utiliser ces outils (disponibles comme binaire précompilé).
Alternativement, vous pouvez générer des clés et signer vos mises à jour même sur MacOS ou Linux, en utilisant des outils fournis par Sparkle Project.
bingenerate_keys.bat Lorsque votre mise à jour est prête (par exemple, Updater.exe ), signez-la et incluez la signature de votre fichier Appcast:
binsign_update.bat Updater.exe dsa_priv.pemsparkle:dsaSignature du nœud enclosure de votre fichier appcast. Alternativement, sparkle:dsaSignature peut être un nœud enfant d' enclosure . Téléchargez l'archive des sources et jetez un œil aux exemples / dossiers.
Si vous souhaitez rester au bord de saignement et utiliser la dernière version, pas encore publiée de WinSparkle, vous pouvez obtenir ses sources à partir du référentiel public. WinSparkle utilise Git et et les sources sont hébergées sur GitHub à https://github.com/vslavik/winsparkle
WinSparkle utilise des sous-modules pour certaines dépendances, vous devez donc les initialiser après avoir vérifié l'arbre:
$ git clone https://github.com/vslavik/winsparkle.git
$ cd winsparkle
$ git submodule init
$ git submodule update
Puis compilez les winparkle comme décrit ci-dessus; Aucune étape supplémentaire n'est requise.