# การยอมรับสัญญาอนุญาต รุ่นนี้ระบุสัญญาอนุญาตของแอปพลิเคชันว่าเป็น **CH-J Proprietary Software License, version 1.14** ลงวันที่ 11 ตุลาคม 2026 ส่วนประกอบของบุคคลที่สามยังคงใช้สัญญาอนุญาตของตนเอง ข้อความสัญญาอนุญาตที่มีผลผูกพันทางกฎหมายมีเฉพาะภาษาอังกฤษเท่านั้น หน้านี้อธิบายเพียงกระบวนการยอมรับและไม่ได้แทนที่หรือเปลี่ยนแปลงข้อความสัญญาอนุญาต ## การติดตั้งและการอัปเดต - เว็บไซต์: การดาวน์โหลดโดยตรงจะเปลี่ยนเส้นทางไปยังแพ็กเกจที่เลือก ไม่ต้องยอมรับบนเว็บ สัญญาอนุญาตและคำแนะนำในการดำเนินงานยังคงมีอยู่บนเว็บไซต์และจะแสดงในแอปก่อนใช้งาน - Windows NSIS: การติดตั้งแบบโต้ตอบจะแสดงคำแนะนำในภาษาที่เลือกในตัวติดตั้งก่อน จากนั้นแสดงสัญญาอนุญาตของแอปพลิเคชันฉบับเต็ม และกำหนดให้ยอมรับสัญญาอนุญาต โหมดการติดตั้งแบบเงียบและโหมดตัวอัปเดตอาจข้ามหน้าของตัวติดตั้งได้ แอปพลิเคชันจะตรวจสอบการยอมรับทุกครั้งเมื่อเริ่มทำงาน - macOS DMG: บันเดิลแอปพลิเคชันฉบับสมบูรณ์ที่ลงนามแล้วพร้อมทางลัด Applications รองรับการติดตั้งด้วยการลากและวาง คำแนะนำและการยอมรับสัญญาอนุญาตรายผู้ใช้จะถูกตรวจสอบในการเปิดใช้ครั้งแรก ตัวอัปเดตเฉพาะจะตรวจสอบและเปิด DMG เดียวกันนี้ - DEB สำหรับ Debian/Ubuntu: ตัวจัดการแพ็กเกจไม่มีขั้นตอนการยอมรับแบบโต้ตอบที่น่าเชื่อถือ จึงต้องยอมรับในการเปิดใช้ครั้งแรก - ทุกแพลตฟอร์ม: หลังการอัปเดต ต้องยอมรับก่อนจึงจะใช้รุ่นใหม่ได้ แม้หมายเลขเวอร์ชันหรือข้อความสัญญาอนุญาตจะไม่เปลี่ยนแปลงก็ตาม ข้อความแจ้งของตัวติดตั้งไม่ได้แทนที่การยอมรับรายผู้ใช้ภายในแอป หน้าต่างเริ่มต้นจะแสดงคำแนะนำในการดำเนินงานฉบับเต็มเป็นภาษาเช็ก เยอรมัน หรืออังกฤษก่อน Continue (ดำเนินการต่อ) จะเปิดสัญญาอนุญาตภาษาอังกฤษฉบับเต็มที่รวมมา พร้อมตัวควบคุมในภาษาเช็ก เยอรมัน และอังกฤษ การยอมรับจะถูกบล็อกจนกว่าจะแสดงขั้นตอนคำแนะนำแล้ว ช่องทำเครื่องหมายจะว่างอยู่ในตอนแรก ป้ายกำกับรวมการยอมรับสัญญาอนุญาตเข้ากับการรับทราบความเสี่ยงต่อการสูญหายของข้อมูลและความจำเป็นในการสำรองข้อมูลที่เหมาะสม ป้ายกำกับนี้ไม่ได้ทำให้คำแนะนำในการดำเนินงานกลายเป็นข้อกำหนดของสัญญา ข้อความยืนยันภาษาเช็กมีดังนี้: > Souhlasím s licenčními podmínkami CH-J Proprietary Software License 1.14. > > Beru na vědomí riziko ztráty nebo poškození dat a nutnost přiměřeného zálohování před rizikovými operacemi. Rozumím, že aplikace sama nezaručuje existenci ani obnovitelnost záloh. การยอมรับจะบันทึกระเบียนในเครื่องก่อนที่บริการ Vault ปลั๊กอิน เครือข่าย การวินิจฉัย หรือตัวอัปเดตใด ๆ จะเริ่มทำงาน การปฏิเสธสัญญาอนุญาตหรือปิดหน้าต่างจะออกจากแอปพลิเคชัน หากการบันทึกล้มเหลว หน้าต่างจะยังเปิดอยู่และแอปพลิเคชันจะยังถูกล็อก ไฟล์สัญญาอนุญาตที่หายไปหรือไม่ถูกต้องจะทำให้แอปพลิเคชันเริ่มทำงานไม่ได้ ## ระเบียนในเครื่อง ไฟล์ `legal/license-acceptance.json` ถูกจัดเก็บไว้ใต้ไดเรกทอรี `userData` ของ Electron ไฟล์นี้มีชื่อและเวอร์ชันของสัญญาอนุญาต SHA-256 ของข้อความที่แสดงตรงทุกตัวอักษร เวอร์ชันแอปพลิเคชัน Build ID เครื่องหมายการยอมรับพร้อมเวลา เครื่องหมายการแสดงคำแนะนำ และ SHA-256 ของเอกสารคำแนะนำที่รวมมาทั้งสามฉบับ การเปลี่ยนแปลงคำแนะนำจะทำให้ต้องแสดงคำแนะนำอีกครั้งก่อนการยอมรับสัญญาอนุญาตใหม่ ไม่มีการเปิดใช้งานสัญญาอนุญาตหรือการรายงานไปยังเซิร์ฟเวอร์ ความไม่ตรงกัน การลบ หรือระเบียนที่อ่านไม่ได้ใด ๆ จะต้องยอมรับใหม่ การดาวน์เกรดไปยังบิลด์อื่นก็ต้องยอมรับเช่นกัน ส่วนการเรียกใช้บิลด์เดิมที่ยอมรับแล้วซ้ำไม่ต้องยอมรับใหม่ แต่ละรุ่นต้องมี Build ID ที่ไม่ซ้ำกันใน `src/shared/buildInfo.json` สคริปต์บิลด์ปกติจะเขียนค่านี้โดยอัตโนมัติ ห้ามใช้ `CHJ_BUILD_ID` ซ้ำสำหรับบิลด์รุ่นเผยแพร่ที่ต่างกัน ระเบียนในเครื่องนี้เป็นการควบคุมเวิร์กโฟลว์ของแอปพลิเคชัน ไม่ใช่หลักฐานป้องกันการปลอมแปลงหรือคีย์สัญญาอนุญาต การแสดงคำแนะนำในการดำเนินงานเป็นข้อบังคับในเวิร์กโฟลว์นี้ ส่วนการปฏิบัติตามคำแนะนำเป็นทางเลือก คำแนะนำจะไม่ถูกรวมไว้ในช่องทำเครื่องหมายการยอมรับ การติดตั้ง DMG หรือ DEB โดยตรง/ออฟไลน์และตัวติดตั้งแบบเงียบไม่สามารถรับประกันการแสดงก่อนการติดตั้งได้ ขั้นตอนบังคับเมื่อแอปพลิเคชันเริ่มทำงานจึงเป็นทางทดแทน ไบนารีที่เผยแพร่แล้วจะไม่ถูกเปลี่ยนแปลงโดยการอัปเดตเว็บไซต์ ## การแพ็กเกจและการตรวจสอบ `npm run legal:prepare` จะคัดลอกสัญญาอนุญาตระดับรากและคำแนะนำในการดำเนินงานเข้าไปในแอปพลิเคชันเมื่อบิลด์จากพื้นที่ทำงานฉบับเต็ม ตรวจสอบเวอร์ชันของสัญญาอนุญาต และเตรียม `build/license.rtf` สำหรับ NSIS ข้อความคำแนะนำ UTF-16 สำหรับหน้าแรกแบบกำหนดเองของ NSIS และ `build/installation.rtf` ที่มีคำแนะนำตามด้วยสัญญาอนุญาตสำหรับ DMG เวอร์ชัน RTF คงข้อความฉบับเต็มและอักขระ Unicode ไว้ รวมถึงชื่อผู้ให้อนุญาต โดยไม่มีข้อจำกัด Mac Roman แบบเดิมของสัญญาอนุญาตแบบข้อความธรรมดาใน DMG ซอร์สของแอปพลิเคชันแบบสแตนด์อโลนเก็บสำเนาที่รวมมาไว้ และไม่ต้องใช้โฟลเดอร์สำหรับการพัฒนา/เว็บ `prepare:release` จะเรียกใช้ขั้นตอนนี้ก่อนการแพ็กเกจ ตัวแพ็กเกจจะรวม `resources/licenses/` และ `resources/docs/` และ `afterPack` จะตรวจสอบเนื้อหาที่จำเป็นของทั้งสอง เรียกใช้ `node --test test/licenseAcceptance.test.js test/licensePackaging.test.js test/i18n.test.js` และ `npm run test:license:ui` การทดสอบเบื้องต้นของแพ็กเกจ macOS จะสร้างข้อมูลจำลองการยอมรับในโปรไฟล์ทดสอบชั่วคราวเท่านั้น กระบวนการเริ่มต้นในการผลิตไม่มีวิธีข้ามการยอมรับ