Winsparkle เป็นไลบรารีการอัปเดตซอฟต์แวร์แบบปลั๊กและฟอเรตสำหรับแอปพลิเคชัน Windows มันได้รับแรงบันดาลใจอย่างมากจากเฟรมเวิร์ก Sparkle สำหรับ OS X ที่เขียนโดย Andy Matuschak และอื่น ๆ จนถึงจุดแบ่งปันรูปแบบการอัปเดตเดียวกัน (appcasts) และมีส่วนต่อประสานผู้ใช้ที่คล้ายกันมาก
ดู https://winsparkle.org สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Winsparkle
เอกสาร: Wiki และ Winsparkle.h Header
วิธีที่ง่ายที่สุดในการใช้ Winsparkle คือการดาวน์โหลด prebuilt WinSparkle.dll binary จากรุ่นหรือใช้แพ็คเกจ WinSparkle NuGet Prebuilt Binaries มีให้สำหรับแพลตฟอร์ม X86, X64 และ ARM64
Winsparkle มี C API ที่ทำให้ใช้งานง่ายจากภาษาสมัยใหม่หลายภาษานอกเหนือจาก C/C ++ นอกจากนั้นยังมีการเชื่อมโยงหลายภาษาสำหรับภาษาที่ได้รับความนิยม:
หากคุณต้องการสร้าง Winsparkle ด้วยตัวเองคุณสามารถทำได้ คุณจะต้องรวบรวมจากการชำระเงิน GIT การพึ่งพาบางส่วนรวมเป็น submodules git
ตรวจสอบแหล่งที่มาและเริ่มต้น submodules:
$ git clone https://github.com/vslavik/winsparkle.git
$ cd winsparkle
$ git submodule init
$ git submodule update
ในการรวบรวมไลบรารีเพียงเปิด WinSparkle.sln (หรือหนึ่งที่สอดคล้องกับโซลูชันเวอร์ชันคอมไพเลอร์ของคุณ) และสร้างมันขึ้นมา
ในขณะนี้มีการจัดทำโครงการสำหรับ Visual C ++ (2010 ขึ้นไป) ดังนั้นคุณจะต้องมี (Express/Community Edition เพียงพอ) โดยหลักการแล้วไม่มีอะไรในรหัสที่ป้องกันไม่ให้มันถูกรวบรวมโดยคอมไพเลอร์อื่น ๆ
นอกจากนี้ยังมีไฟล์สร้าง CMake ที่ไม่ได้รับการสนับสนุนในไดเรกทอรี CMake
Winsparkle ใช้กลไกเดียวกันสำหรับการลงนามและการตรวจสอบลายเซ็นเช่น Parkle Project เครื่องมือและวิธีการตรวจสอบนั้นเข้ากันได้อย่างสมบูรณ์
คุณสามารถใช้วิธีที่เข้ากันได้เพื่อลงนามในการอัปเดตของคุณ เพื่อให้บรรลุเป้าหมายนี้คุณต้องลงนามใน SHA1 (ในรูปแบบไบนารี) ของไฟล์อัปเดตของคุณด้วย DSA Private Key โดยใช้ SHA1 Digest
Winsparkle จัดเตรียมเครื่องมือในการสร้างคีย์และลงนามในการอัปเดตโดยใช้ OpenSSL
คุณต้องใช้ openssl.exe บน Windows เพื่อใช้เครื่องมือเหล่านั้น (มีให้เป็นไบนารีที่คอมไพล์ล่วงหน้า)
หรือคุณสามารถสร้างคีย์และลงนามในการอัปเดตของคุณได้แม้ใน MacOS หรือ Linux โดยใช้เครื่องมือที่จัดทำโดย Sparkle Project
bingenerate_keys.bat เมื่อการอัปเดตของคุณพร้อม (เช่น Updater.exe ) ลงชื่อเข้าใช้และรวมลายเซ็นไปยังไฟล์ appcast ของคุณ:
binsign_update.bat Updater.exe dsa_priv.pemsparkle:dsaSignature ของโหนด enclosure ของไฟล์ appcast ของคุณ อีกทางเลือก sparkle:dsaSignature สามารถเป็นโหนดลูกของ enclosure ได้ ดาวน์โหลดแหล่งเก็บถาวรแหล่งที่มาและดูตัวอย่าง/ โฟลเดอร์
หากคุณต้องการอยู่ที่ขอบเลือดและใช้ Winsparkle รุ่นล่าสุดที่ยังไม่ได้เปิดตัวคุณสามารถรับแหล่งที่มาจากที่เก็บสาธารณะได้ Winsparkle ใช้ Git และแหล่งที่มาโฮสต์บน GitHub ที่ https://github.com/vslavik/winsparkle
Winsparkle ใช้ submodules สำหรับการพึ่งพาบางอย่างดังนั้นคุณต้องเริ่มต้นพวกเขาหลังจากตรวจสอบต้นไม้ออก:
$ git clone https://github.com/vslavik/winsparkle.git
$ cd winsparkle
$ git submodule init
$ git submodule update
จากนั้นรวบรวม winsparkle ตามที่อธิบายไว้ข้างต้น; ไม่จำเป็นต้องมีขั้นตอนเพิ่มเติม