إذا كنت تعمل مع تطبيقات سطح المكتب على نظام التشغيل ويندوز وما زلت تستخدم مثبتات EXE أو MSI التقليدية لتثبيت كل شيء، فقد حان الوقت لإلقاء نظرة على MSIX كصيغة تغليف حديثةفهو لا يحسن التثبيت والإزالة فحسب، بل يبسط أيضًا التحديثات والنشر الجماعي والتكامل مع نظام التشغيل Windows الحالي، سواء محليًا أو في السحابة.
سوف ترى خلال هذا الدليل، خطوة بخطوة، كيفية إنشاء حزم MSIX في نظام التشغيل ويندوز من زوايا متعددة: استخدام أداة تغليف MSIX، مع Visual Studio، مع تصميمات التغليف المتقدمة باستخدام MakeAppx.exe، وكيفية دمج كل ذلك في سيناريوهات مثل ربط تطبيقات MSIX في بيئات افتراضية. الهدف هو أن تكتسب فهمًا عمليًا وشاملًا لكيفية تغليف تطبيقاتك وتوقيعها والتحقق من صحتها وتوزيعها.
ما هو MSIX ولماذا يستحق الاستخدام؟
MSIX هو تنسيق حديث للتثبيت والتغليف لتطبيقات ويندوز صممت مايكروسوفت هذا النظام كتطور طبيعي لأنظمة EXE و MSI و AppX. فهو يجمع بين مزايا برامج التثبيت التقليدية وفلسفة الحاويات للتطبيقات الحديثة، مما ينتج عنه عمليات تثبيت أكثر موثوقية ونظافة وقابلية للتنبؤ.
بخلاف برنامج التثبيت الكلاسيكي EXE أو MSI، فإن حزمة MSIX هي يتم تركيبه في حاوية خاضعة للرقابةمع وجود قواعد واضحة بشأن أماكن كتابة الملفات ومفاتيح التسجيل. وهذا يضمن أنه عند إلغاء تثبيت التطبيق، تتم إزالة كل ما يتعلق به، فلا تترك أي آثار على النظام قد تُسبب فوضى بمرور الوقت.
يرث MSIX مفاهيم من App-V ونموذج UWP، ولكن دون إجبارك على المرور عبر متجر Microsoft أو إعادة تصميم مشاريعك بالكامل. يمكنك تحويل تطبيقات Win32 أو WPF أو Windows Forms الموجودة (وفي كثير من الحالات دون الحاجة إلى تعديل التعليمات البرمجية) إلى حزمة MSIX يمكنك نشرها باستخدام أدوات مثل Intune أو Configuration Manager أو نصوص PowerShell أو حتى النقر المزدوج على الملف.
ومن المزايا الرئيسية الأخرى أن MSIX مصمم لـ تحسين عرض النطاق الترددي والتخزينيستخدم كتل بحجم 64 كيلوبايت، ويتجنب تكرار الملفات بين التطبيقات، ويدعم التحديثات التفاضلية، بحيث يتم تنزيل التغييرات فقط - وهو أمر مثالي إذا كنت تقوم بتوزيع البرامج من السحابة أو إلى العديد من الأجهزة على الشبكة.
علاوة على ذلك، تقدم مايكروسوفت حزمة تطوير برمجية (SDK) تسمح بالعمل مع MSIX. على أنظمة تشغيل أخرى مثل iOS أو macOS أو Android أو Linux أو الإصدارات القديمة من Windowsيفتح هذا الباب أمام سيناريوهات التوزيع متعددة المنصات باستخدام نموذج التغليف نفسه.
المتطلبات والأدوات اللازمة لإنشاء حزم MSIX

للبدء في إنشاء حزم MSIX بشكل صحيح، من المهم أن تكون واضحًا بشأن الأدوات التي ستستخدمها وفي أي بيئة. الحد الأدنى الذي ستحتاجه هو نظام التشغيل Windows 10 الإصدار 1809 أو أحدث، أو Windows 11، وصلاحيات المسؤول على الجهاز الذي تقوم عليه بعملية التحويل.
تتمثل الأداة الرئيسية لتغليف تطبيقات سطح المكتب الحالية في أداة تغليف MSIXيمكنك تثبيته من متجر مايكروسوفت (موصى به) أو دون اتصال بالإنترنت عن طريق تنزيل الحزمة وتثبيتها باستخدام PowerShell. كما يتوفر أيضًا عبر WinGet باستخدام أمر بسيط مثل:
winget install “MSIX packaging tool” سماح قم بتثبيت أداة تجميع MSIX بسرعة من سطر الأوامر، بشرط أن يكون لديك برنامج العميل مثبتًا وحساب متوافق مع المتجر عند الحاجة.
بالإضافة إلى أداة التغليف، إذا كنت تقوم بتطوير تطبيقات حديثة أو صيانة مشاريع قائمة، فستجدها مفيدة للغاية. Visual Studio 2019 أو 2022 مع أحمال العمل المناسبة (على سبيل المثال، "تطوير تطبيقات سطح المكتب باستخدام لغة C++" أو ".NET لتطبيقات سطح المكتب") والملحقات المتعلقة بـ MSIX. يتضمن Visual Studio معالجات لإنشاء الحزم وتحميل الملفات إلى المتجر.
في السيناريوهات الأكثر تقدماً، يدخل ما يلي حيز التنفيذ MakeAppx.exeأداة سطر الأوامر الرسمية لتجميع حزم AppX/MSIX ومحتوياتها من تصميم تغليف XML. تتيح لك هذه الأداة أتمتة إنشاء حزم معقدة ذات مكونات وموارد متعددة.
وأخيرًا، إذا كنت تعمل مع Windows Virtual Desktop أو Azure Virtual Desktop، أو ترغب في تشغيل التطبيقات في حاويات VHD أو CIM، فسيهمك معرفة إرفاق تطبيق MSIX وأدوات الطرف الثالث مثل MSIX Hero أو مجتمع AppVentiX، بالإضافة إلى أداة MSIX Manager لإنشاء حاويات أقراص افتراضية مع حزمك.
استخدام أداة تجميع MSIX: تحويل برامج التثبيت الحالية
تم تصميم أداة تغليف MSIX بحيث يمكنك إعادة تدريب الفنيين الحاليين (MSI، EXE، App-V 5.x، ClickOnce، وحتى عمليات التثبيت اليدوية أو القائمة على البرامج النصية) في حزمة MSIX دون الحاجة إلى شفرة المصدر الأصلية. يُعد هذا مفيدًا بشكل خاص لفرق تكنولوجيا المعلومات التي ترغب في تحديث كتالوج برامجها دون إعادة كتابة التطبيقات.
عند تشغيل الأداة لأول مرة، سيُطلب منك الموافقة على إرسال بيانات القياس عن بعد. تقتصر البيانات التشخيصية على سلوك الأداة نفسها. ولا تُستخدم هذه البيانات لتحديد هويتك أو التواصل معك. بمجرد قبول طلب بيانات القياس عن بُعد (أو رفضه)، يمكنك الاختيار بين إنشاء حزمة تطبيق، أو إنشاء حزمة تعديل، أو فتح محرر الحزم.
الخيار الأكثر استخدامًا هو إنشاء حزمة تطبيقيرشدك هذا المسار من إعداد البيئة إلى إنشاء ملف MSIX، بدءًا من MSI أو EXE أو App-V أو ClickOnce، أو برنامج تثبيت نصي، أو حتى عملية يدوية حيث تقوم بتنفيذ الخطوات التي تتخذها في عملية تثبيت عادية.
تدعم أداة التغليف ثلاثة أوضاع للتحويل: التغليف على الجهاز المحلي، أو على جهاز بعيد، أو على جهاز افتراضي محلي من نوع Hyper-V. إذا كنت تعمل بالفعل في بيئة نظيفة (مع تجنب كثرة البرامج والخدمات التي قد تُسبب ضوضاءً)، يُنصح عادةً باختيار خيار إنشاء الحزمة على نفس الجهاز. إذا كنت تُفضل عزل العملية أو لديك بيئة اختبار مُجهزة مُسبقًا، فيمكنك الاتصال بجهاز افتراضي أو جهاز بعيد مُخصص.
في حالة الأجهزة الافتراضية المحلية، ضع في اعتبارك ما يلي: يتم دعم الأجهزة الافتراضية Hyper-V فقطإذا كنت تستخدم منصة افتراضية مختلفة، فستحتاج إلى استخدام وضع الجهاز البعيد للاتصال بهذا الجهاز وإجراء عملية الالتقاط من هناك.
قم بإعداد آلة التحويل

قبل البدء في تسجيل بيانات فني التركيب، يُنصح بـ هيئ البيئة لتقليل التداخلتتضمن أداة التعبئة والتغليف MSIX شاشة "إعداد الكمبيوتر" حيث يمكنك ترك الجهاز في حالة مثالية لعملية التعبئة والتغليف.
من جهة، تتحقق الأداة مما إذا كان برنامج تشغيل أداة تغليف MSIX تم تثبيت برنامج التقاط البيانات وتفعيله. استخدم أداة DISM للتحقق من ذلك، وإذا اكتشفت الأداة أنه مفقود أو معطل، فستحاول تفعيله تلقائيًا. في حال واجهت أي أخطاء، يُنصح بمراجعة وثائق استكشاف الأخطاء وإصلاحها، وإذا استمرت المشكلة، فأبلغ عنها عبر مركز ملاحظات Windows.
ومن النقاط المهمة الأخرى أن الأداة قم بتعطيل تحديثات ويندوز مؤقتًا أثناء عملية التغليف لمنع تسجيل التغييرات غير المتعلقة بتثبيت التطبيق، مثل تحديثات النظام أو التحديثات من تطبيقات أخرى.
يُستخدم مربع "إعادة التشغيل المعلقة" كمؤشر على وجود عمليات نظام معلقة في انتظار إعادة التشغيل. إعادة التشغيل ليست إجبارية.ومع ذلك، يوصى بالقيام بذلك يدويًا إذا أبلغ نظام التشغيل Windows بوجود تغييرات معلقة، ثم إعادة تشغيل الأداة للعمل في بيئة نظيفة.
بالإضافة إلى ذلك، يمكنك تعطيل خدمات مثل بحث ويندوز أو خدمة مضيف الرسائل النصية القصيرة من نفس الشاشة، حدد المربعات المناسبة واستخدم خيار "تعطيل المحدد". سيقوم البرنامج تلقائيًا بتحديث الحالة إلى "معطل" عند إتمام العملية، مع العلم أن هذه الخطوات ليست إلزامية.
بعد ضبط هذه المعايير والتحقق من أن البيئة جاهزةما عليك سوى النقر على "التالي" للانتقال إلى مرحلة اختيار برنامج التثبيت الذي تريد تحويله.
اختر برنامج التثبيت لتغليف الحزمة وتوقيعها.
في الشاشة التالية تقوم بتحديد أي برنامج تثبيت سيقوم بالتقاط الأداة وكيف سيتصرف البرنامج أثناء العملية. هنا يمكنك تحديد ملف MSI أو EXE أو App-V أو ClickOnce مباشرةً، أو سطر أوامر البرنامج النصي، أو ترك الحقل فارغًا وتشغيل التثبيت يدويًا عند بدء الأداة بالمراقبة.
إذا اخترت ملف MSIتستطيع أداة التغليف قراءة محتويات الحزمة وتعبئة العديد من حقول بيان MSIX تلقائيًا، مما يوفر وقتًا كبيرًا لاحقًا. إذا كنت تستخدم تحويلات MST أو تصحيحات MSP، فيمكنك تحديدها كوسيطات في حقل معلمات المُثبِّت.
في حالة الفنيين القائمين على التركيب App-V 5.1العملية أبسط من ذلك. ما عليك سوى اختيار ملف App-V، وسيقوم البرنامج بتحويل البيان إلى تنسيق MSIX، لينقلك مباشرةً إلى شاشة إنشاء الحزمة. مع ذلك، لا تدعم هذه الطريقة إصدارات App-V 4.x، ويُنصح بالبدء باستخدام مُثبِّت المصدر الأصلي.
إلى ملف تنفيذي و ClickOnceلا يمتلك البرنامج تنسيقًا قياسيًا لاستخراج البيانات الوصفية، لذا سيتعين عليك إدخال معلومات الحزمة يدويًا (الاسم، الناشر، إلخ) في خطوات لاحقة. ومع ذلك، تظل هذه الملفات قابلة للتحويل بالكامل طالما أن برنامج التثبيت يعمل بطريقة يمكن التنبؤ بها إلى حد معقول.
إذا كان ما لديك هو تثبيت البرنامج النصي أو إذا كنت تفضل إجراء التثبيت يدويًا، يمكنك تحديد سطر أوامر البرنامج النصي أو ترك الحقل فارغًا وتشغيل كل شيء يدويًا أثناء مرحلة التثبيت بينما تقوم الأداة بالتقاط التغييرات التي تطرأ على النظام.
تتيح لك هذه الشاشة نفسها إمكانية ضبط... تفضيلات توقيع الحزمةيتطلب MSIX توقيع الحزمة لتثبيتها، لذلك يمكنك الاختيار بين توقيع Device Guard (خدمة Microsoft تعتمد على Azure AD)، أو شهادة .pfx الخاصة بك، أو ملف .cer للتحقق من تطابق الناشر، أو خيار عدم التوقيع في هذا الوقت (مفيد إذا كنت ستوقع في مرحلة أخرى من مسار العمل).
إذا اخترت شهادة بصيغة .pfx، فستحتاج إلى انتقل إلى الملف وأدخل كلمة المرور. إذا كان محميًا. باستخدام ميزة التوقيع عبر Device Guard، ستسجل الدخول باستخدام حساب Active Directory مُهيأ لهذه الخدمة، وستُفوض عملية التوقيع إلى Microsoft. يُوصى بشدة أيضًا بتضمين عنوان URL للطابع الزمني (RFC 3161) بحيث يظل التوقيع صالحاً حتى في حالة انتهاء صلاحية الشهادة.
املأ معلومات حزمة MSIX
بعد ضبط إعدادات المثبّت وتفضيلات التوقيع، ستطلب منك الأداة إكمال معلومات هوية الحزمةتحدد هذه الحقول كيف يرى نظام التشغيل تطبيقك، وكيف يتم تحديثه، وكيف سيتم عرضه للمستخدم النهائي.
El اسم الحزمة هو إلزامي ويتوافق مع المعرّف الداخلي للحزمة في ملف البيان. لا يظهر للمستخدم، وهو حساس لحالة الأحرف، ولا يسمح بالمسافات، ويجب أن يتراوح طوله بين 3 و50 حرفًا أبجديًا رقميًا، بما في ذلك الواصلات والنقاط. علاوة على ذلك، لا يمكن أن ينتهي بنقطة أو يتزامن مع أسماء محجوزة. مثل CON و PRN و AUX و NUL و COM1-COM9 أو LPT1-LPT9.
El اسم عرض الحزمة نعم، يظهر للمستخدم في قائمة ابدأ وفي صفحات الإعدادات، لذا ينبغي أن يكون وصفياً وسهل الاستخدام. يمكن أن يتراوح طوله بين حرف واحد و256 حرفاً، ويدعم الترجمة في حال استخدام لغات متعددة.
El اسم الناشر يجب أن يتوافق مع اسم مميز (DN)، والأهم من ذلك، يجب أن يتطابق مع موضوع الشهادة. والتي تستخدمها لتوقيع الحزمة. تقبل سلسلة طويلة إلى حد ما (تصل إلى 8192 حرفًا) وتتبع تعبيرًا نمطيًا محددًا مع حقول مثل CN وO وOU وC وما إلى ذلك، على غرار شهادات X.509.
يمكنك أيضًا تعريف عرض اسم الناشرهذا هو النص المقروء الذي سيراه المستخدم في مُثبِّت التطبيق وخيارات النظام. يدعم هذا الحقل، مثل اسم عرض الحزمة، ما يصل إلى 256 حرفًا ويمكن ترجمته.
La إصدار الحزمة يستخدم هذا النظام الترميز الرباعي "Major.Secondary.Build.Revision". في كل مرة تُصدر فيها تحديثًا، يجب عليك زيادة هذا الإصدار، حيث يستخدمه نظام التشغيل Windows لتحديد ما إذا كان التثبيت جديدًا أم تحديثًا لتثبيت موجود.
La وصف اسم الحزمة اختياري، ولكنه مفيد لتوثيق الغرض من التطبيق داخليًا أو لعرض نص توضيحي في واجهة التثبيت.
المجال موقع التثبيت حدد المسار الذي سينسخ إليه برنامج التثبيت ملفات التطبيق، وعادةً ما يكون هذا المسار ضمن مجلد "ملفات البرامج". هذا اختياري، ولكنه مُستحسن إذا تم تثبيت التطبيق خارج هذا المجلد الافتراضي. تأكد من صحة هذا المسار. وهذا يتطابق مع ما يفعله المثبت أثناء عملية الالتقاط، بحيث تعكس الحزمة بنية الملف بشكل صحيح.
وأخيرًا، لديك الصندوق لـ إضافة دعم لـ MSIX Coreيسمح هذا بتشغيل حزمتك على الإصدارات القديمة من نظام التشغيل Windows التي لا تدعم MSIX بشكل أصلي، وذلك عن طريق تحديد الحد الأدنى لإصدار Windows الذي تريد دعمه باستخدام MSIX Core من قائمة منسدلة.
مرحلة تثبيت التطبيق والتقاط البيانات

بعد اكتمال عملية تهيئة الهوية، تبدأ أداة التغليف مرحلة التركيب الخاضعة للمراقبةمن هذه النقطة فصاعدًا، سيتم تسجيل كل ما تقوم به لتثبيت التطبيق وتكوينه وسيصبح جزءًا من حزمة MSIX.
تقوم الأداة بتشغيل برنامج التثبيت في البيئة التي اخترتها (الجهاز المحلي، أو الجهاز الظاهري، أو عن بُعد)، ويجب عليك اتباع خطواتها كالمعتاد، مع اختيار اللغة والمكونات ومسار التثبيت، وما إلى ذلك. من المهم أن يتطابق مسار التثبيت مع المسار المعلن عنه سابقًا في معلومات العبوة لتجنب التناقضات.
إذا كان التطبيق بحاجة إلى إنشاء اختصارات، وخاصةً على سطح المكتب أو في قائمة ابدأ، فمن الأفضل القيام بذلك خلال هذه المرحلة حتى يمكن للأداة تحديد نقاط الدخول الصحيحةوبالمثل، إذا كان للبرنامج متطلبات مسبقة (أطر عمل، أوقات تشغيل، .NET 3.5 أو 2.0، مكونات إضافية)، فيجب عليك تثبيتها الآن.
تتيح لك الأداة تشغيل برامج تثبيت متعددة أو نصوص برمجية أثناء عملية الالتقاط النشطة، يمكنك الاستفادة من ذلك لتجميع عدة أجزاء تشكل جزءًا من نفس الحل في وقت واحد.
إذا تطلبت عملية التثبيت إعادة تشغيل النظام، يمكنك استخدام زر "إعادة التشغيل" الخاص بالأداة أو إعادة التشغيل يدويًا. عند تسجيل الدخول مجددًا، ستستأنف أداة التغليف العملية وتستكمل عملية التحويل من حيث توقفت.
عندما تعتقد أن الإعداد والتكوين الأولي بمجرد الانتهاء من التطبيق، انقر فوق "التالي" للمتابعة إلى إدارة مهام بدء التشغيل الأول.
إدارة وخدمات الإقلاع الأولى ضمن الباقة
على الشاشة primer lanzamientoتعرض الأداة قائمة بالملفات التنفيذية التي تم اكتشافها أثناء التثبيت. يُنصح بفتح التطبيق الرئيسي مرة واحدة على الأقل لتسجيل مهام الإعداد الأولية، وإنشاء الملف الشخصي، وإنشاء مجلد المستخدم، وما إلى ذلك.
حدد الملف القابل للتنفيذ وانقر على "تشغيل" لتشغيله. إذا كان هناك عدة ملفات قابلة للتنفيذ، يمكنك تحديد الملف الذي تريد تشغيله. نقطة الدخول الرئيسية. يمكنك أيضا قم بإزالة الإدخالات غير الضرورية والتي لا تريد عرضها للمستخدم كتطبيقات منفصلة، باستخدام خيار "الإزالة".
إذا لم يظهر الملف التنفيذي الرئيسي في القائمة لسبب ما، يمكنك انتقل يدويًا إلى موقعكقم بتشغيله ثم حدّث القائمة لتسجيله. تتيح لك هذه المرونة تكييف الحزمة مع التطبيقات ذات الأشجار الثنائية المعقدة.
عند الانتقال إلى الشاشة التالية، ستطلب منك الأداة تأكد من إتمام عملية التثبيت وإعداد التشغيل الأولي.إذا اخترت "نعم، انتقل إلى الخطوة التالية"، فسيستمر التدفق؛ أما إذا أجبت "لا، لم أنتهِ بعد"، فستعود إلى الشاشة السابقة لتشغيل المزيد من التطبيقات أو نسخ الملفات أو تعديل أي شيء مطلوب.
ابتداءً من الإصدار 1.2019.1220.0، تتضمن أداة التغليف ما يلي: تقرير الخدماتإذا اكتشف أثناء عملية التحويل خدمات مسجلة بواسطة المثبت، فسيعرضها مجمعة في جدولين: "مضمن" (جاهز للتغليف) و"مستبعد" (تلك التي تتطلب معلومات إضافية أو غير مدعومة).
بالنقر المزدوج على الخدمة ستتمكن من عرض البيانات، وفي بعض الحقول، تعديلها مثل اسم العرض، والوصف، وحساب بدء التشغيل، ونوع بدء التشغيل (تلقائي، أو يدوي، أو معطل)، والوسائط، والتبعيات. أما اسم المفتاح ومسار الصورة، فلا يمكن تعديلهما لأنهما جزء من تعريف الخدمة الأساسية.
بعد مراجعة هذه المعلومات، يمكنك أن تقرر ما إذا كنت نقل خدمة ثابتة إلى القائمة المضمنة أو يمكنك حذفه إذا كنت لا ترغب في تضمينه. هذا مفيد جدًا للتحكم في الخدمات التي تُرفق فعليًا بالتطبيق النهائي وتجنب المفاجآت في بيئة الإنتاج.
إنشاء وتحرير الحزمة النهائية
في المرحلة الأخيرة من أداة التعبئة والتغليف، تقوم باختيار موقع حفظ ملف MSIX المُنشأبشكل افتراضي، يتم استخدام مجلد بيانات التطبيق المحلي للأداة، ولكن يمكنك تحديد أي مسار آخر يكون أكثر ملاءمة لسير عملك.
إذا كنت ترغب أيضًا في إنشاء ملف قالب التحويليُعدّ هذا مفيدًا جدًا لتكرار عمليات تحويل التطبيق نفسه مستقبلًا مع تغييرات طفيفة؛ حيث يمكنك تحديد مسار حفظ مختلف لهذا الملف. يُرجى ملاحظة أنه لإنشاء هذا القالب، يجب أن تكون قد حددت مُثبِّتًا في بداية العملية.
قبل الضغط على زر "إنشاء"، يمكنك إدخال محرر الحزم لمراجعة وتعديل محتوى أو خصائص ملف MSIX الملتقط. ومن هناك، يمكن تعديل البيان، والمسارات، والملفات المضمنة، وإدخالات التطبيق، والموارد المرئية، وغيرها من التفاصيل المتقدمة.
عند اكتمال عملية الإنشاء، ستظهر نافذة منبثقة تشير إلى المسار الدقيق للحزمة المُنشأةمع رابط مباشر لفتح المجلد، بالإضافة إلى موقع سجلات الأداة في دليل LocalState. ومن هناك، يمكنك إغلاق الأداة، أو اختبار التثبيت، أو مواصلة تحسين الحزمة باستخدام المحرر.
إنشاء حزم MSIX من Visual Studio
عند تطوير تطبيقات حديثة أو ترحيل المشاريع إلى Windows App SDK و WinUI 3، فإن Visual Studio يجعل عملية التغليف أسهل بكثير. الملف الرئيسي هو Package.appxmanifestملف XML يحدد الهوية والقدرات والارتباطات والرموز وكيفية تكامل التطبيق مع النظام.
من خلال مصمم ملف البيان في Visual Studio، يمكنك ضبط كل شيء دون الحاجة إلى تعديل ملف XML يدويًا: الأيقونات، واتجاهات الشاشة، وإمكانيات النظام (الكاميرا، والشبكة، والموقع، وما إلى ذلك)، وربط الملفات، والبروتوكولات المخصصة، وغير ذلك الكثير. تجمع كل علامة تبويب في المصمم الخيارات ذات الصلة، وتوفر روابط إلى الوثائق إذا كنت بحاجة إلى مزيد من التفاصيل.
في علامة التبويب الموارد البصرية يمكنك تحديد الشعارات والصور التي ستُستخدم في قائمة ابدأ، وشريط المهام، وقائمة التطبيقات، وإشعارات التنبيه. من المهم توفير الأحجام التي يتطلبها نظام ويندوز (44، 150، 310، وغيرها من الأحجام المختلفة) لضمان ظهور التطبيق بوضوح مهما كان حجمه.
في علامة التبويب التعبئة والتغليف تقوم بإدخال تفاصيل النشر واختيار الشهادة التي ستُستخدم لتوقيع ملف MSIX. يجب توقيع كل تطبيق مُغلّف، ولكي يتمكن المستخدم من تثبيته دون تحذيرات، يجب أن تكون الشهادة موثوقة من قِبل جهاز الكمبيوتر الخاص به (مثبتة في المتجر المناسب أو صادرة عن جهة إصدار شهادات معترف بها).
إذا كنت تفكر قم بتوزيع التطبيق من خلال متجر مايكروسوفتيمكنك ربط المشروع بتطبيق المتجر مباشرةً من Visual Studio باستخدام قائمة "نشر" > "ربط التطبيق بالمتجر". يؤدي هذا إلى مزامنة حقول التغليف تلقائيًا مع البيانات المسجلة في مركز الشركاء.
لإنشاء الحزمة، انقر بزر الماوس الأيمن على المشروع المُعبأ (على سبيل المثال، "تطبيق فارغ، مُعبأ (واجهة مستخدم ويندوز 3 على سطح المكتب)") واختر نشر > إنشاء حزم التطبيقات. سيرشدك المعالج خلال تحديد ما إذا كنت تريد التعبئة للتثبيت الجانبي أو المتجر، وطريقة التوقيع، و البنى المستهدفة (x86، x64، ARM).
أنواع حزم التطبيقات وملفات التحميل
في بيئة MSIX، توجد أنواع عديدة من الملفات المتعلقة بالتغليف، ولكل منها دورها الخاص. وأبسطها هو... حزمة التطبيق (.msix أو .appx)تحتوي هذه الحزمة على التطبيق وموارده لبنية معمارية محددة، مثل x64 أو x86. إذا كنت بحاجة إلى دعم بنى معمارية متعددة، فسيتعين عليك إنشاء حزمة لكل منها.
لتبسيط التوزيع عبر المنصات، هناك حزم التطبيقات المجمعة (.msixbundle أو .appxbundle)يمكن أن تحتوي الحزمة على عدة حزم تطبيقات، كل منها مخصصة لبنية معمارية مختلفة (x86، x64، ARM). يختار النظام تلقائيًا الحزمة التي تتوافق مع الجهاز المثبت عليه.
عندما ترغب في إرسال التطبيق إلى متجر مايكروسوفت، ملف تحميل حزمة التطبيق (.msixupload أو .appxupload)يجمع هذا الملف حزمة واحدة أو أكثر أو حزمًا فردية مع ملف الرموز (.appxsym) المستخدم لتحليل الأعطال والأداء من مركز الشركاء.
يمكن لبرنامج Visual Studio إنشاء يتم تحميل هذه الملفات تلقائيًا إذا اخترت خيارات إنشاء حزمة المتجر في المعالج، فستحتاج فقط إلى تحميل ملف .msixupload أو .appxupload إلى مركز الشركاء أثناء عملية الإرسال.
تصميمات تغليف متطورة باستخدام MakeAppx.exe
مع ازدياد حجم تطبيقاتك وتعقيدها، غالباً ما يتم تقسيمها إلى حزم متنوعة: الرئيسية، والموارد، والمحتوى الاختياري، والمحتوى القابل للتنزيل، وما إلى ذلك.قد تكون إدارة كل هذا يدويًا أمرًا شاقًا للغاية، خاصةً إذا لم تكن تستخدم Visual Studio. في مثل هذه الحالات، يوجد مفهوم تخطيط الحزمة (PackagingLayout) الذي يدعمه MakeAppx.exe.
تصميم العبوة هو مستند XML يصف البنية الكاملة مكونات التطبيق المعبأ: عائلات الحزم، والحزم، والحزم الرئيسية، وحزم الأصول، والملفات الموجودة داخل كل منها، وفلاتر التضمين/الاستبعاد، وما إلى ذلك. باستخدام ملف XML واحد واستدعاء واحد لـ MakeAppx، يمكنك تجميع جميع الحزم الضرورية.
في مثال بسيط، سيكون لديك عنصر تصميم العبوة مع عائلة الحزمة والذي يعمل كمجموعة تطبيقات. هنا يمكنك تحديد سمات مثل ManifestPath (مسار ملف AppxManifest الأساسي)، وFlatBundle (إذا كنت تريد حزمة مسطحة أو كلاسيكية)، وResourceManager (إذا كنت تستخدم MRT للموارد)، وحتى مُعرّف فريد لتلك المجموعة.
يمكنك تحديد ما يلي ضمن PackageFamily فئة الإشتراك بالنسبة للكود الرئيسي (تحديد بنية المعالج: x64 أو x86 أو arm أو محايد) وواحد أو أكثر حزمة الأصول بالنسبة للمحتوى الإضافي (مثل موارد الوسائط المتعددة)، يمكنك تحديد AllowExecution=false بحيث لا يتطلب المحتوى تحليلًا دقيقًا للفيروسات لأنه لا يحتوي على ملفات تنفيذية.
من خلال العنصر ملفات وتحدد عقد الملفات الخاصة بها الملفات التي يتم تضمينها في كل حزمة: يحدد SourcePath مكان وجود الملفات على نظامك أو شبكتك، ويحدد DestinationPath مكان وضعها داخل الحزمة، ويسمح لك ExcludePath باستبعاد الملفات التي تم تحديدها بالفعل بواسطة أنماط أخرى. الأحرف البديلة المفردة (*) والمزدوجة (**) تتيح لك هذه الميزة تحديد مجموعات من الملفات بشكل متكرر، بل وحتى إعادة تسميتها أثناء التشغيل.
كما أنها تظهر في التصاميم المتقدمة حزمة الموارد بالنسبة للحزم المترجمة، يمكنك استخدام عقدتي "الموارد" و"الموارد" لتعيين مُحدِّدات اللغة، والمقياس، وما إلى ذلك، وتحديد إحداها كإعداد افتراضي. يمكنك أيضًا تحديد تم تحديد PackageFamily على أنه اختياري، والتي تمثل المحتوى القابل للتنزيل أو الإضافات التي يمكن تثبيتها بشكل منفصل، وتتحكم سمة RelatedSet فيما إذا كان يتم تحديثها بالتزامن مع الحزمة الرئيسية.
إذا كانت لديك بالفعل حزم مُجمّعة مسبقًا يجب أن تكون جزءًا من مجموعة، فيمكنك الرجوع إليها باستخدام حزمة جاهزة، ببساطة يشير إلى المسار إلى ملف .msix أو .appx أو .appxbundle الموجود بحيث يأخذه MakeAppx في الاعتبار عند إنشاء الحزمة العامة.
لتجميع البيانات باستخدام تصميم معين، يمكنك تشغيل أوامر مثل MakeAppx.exe build /f PackagingLayout.xml /op OutputPackages\يُنشئ هذا جميع الحزم الموضحة في ملف XML. يمكنك اختيارياً حصر نفسك بمكونات معينة باستخدام /id، أو الإشارة إلى إصدار سابق باستخدام /ip لإعادة استخدام الحزم التي لا تتغير، أو زيادة أرقام الإصدارات تلقائياً باستخدام /iv.
إرفاق تطبيق MSIX وحاويات VHD/CIM
في بيئات سطح المكتب الافتراضية، مثل Azure Virtual Desktop، يتم استخدام إرفاق تطبيق MSIX، وهي تقنية لتثبيت التطبيقات الموجودة في حزم MSIX داخل حاويات VHD أو VHDX أو CIM، مما يجنب تضخيم صورة النظام الأساسية بعشرات البرامج.
الفكرة هي الحفاظ على صورة النظام نظيفة وصغيرة قدر الإمكانويمكنك تخزين التطبيقات على أقراص افتراضية يتم تثبيتها وربطها بجلسات المستخدمين حسب الحاجة. بهذه الطريقة، يمكنك "ربط" التطبيقات أو "فصلها" دون الحاجة إلى إعادة تثبيت أي شيء على الصورة الرئيسية.
لكي ينجح هذا، من الضروري أن تكون حزم MSIX موقعة بشهادة ثقةصادر عن جهة إصدار شهادات داخلية أو عامة تعترف بها الأنظمة. وبدون هذه الثقة، لن يسمح نظام ويندوز بتشغيل الحزم المثبتة.
يمكن إنشاء حاوية VHD من ملف MSIX بعدة طرق. تقدم مايكروسوفت أداة إدارة MSIXيتيح لك هذا استخراج محتويات الحزمة وتجميعها في قرص افتراضي، جاهز للتركيب. كما تعمل أدوات خارجية مثل MSIX Hero أو أدوات من مجتمع AppVentiX على أتمتة هذه العملية وتقليل الاعتماد على وحدات Hyper-V في PowerShell.
بمجرد إنشاء ملف VHD أو CIM، يتم تكوين بيئة سطح المكتب الافتراضي بحيث عند تسجيل الدخول، قم بتثبيت القرص وتسجيل التطبيق المرفقوبذلك يراه المستخدم مثبتًا دون أن يشغل مساحة في الصورة الأساسية. هذا الأسلوب يُبسط إدارة الإصدارات، وتخصيص التطبيقات ديناميكيًا، ويقلل وقت الصيانة.
تثبيت حزم MSIX والتحقق من صحتها وتوزيعها

يمكن لحزمة MSIX قم بالتثبيت بنقرة مزدوجة بسيطة حول ملف .msix أو .msixbundle. سيؤدي هذا إلى فتح مُثبِّت تطبيقات ويندوز، والذي يعرض معلومات أساسية عن الحزمة، والناشر، وزر تثبيت مع شريط تقدم ورسائل خطأ في حالة حدوث مشكلة.
عند إنشاء الحزم من Visual Studio، يتم أيضًا إنشاء نصوص PowerShell البرمجية، مثل: Add-AppDevPackage.ps1توجد هذه الملفات في مجلدات من النوع *_Test. يتيح لك تشغيل هذا البرنامج النصي باستخدام "التشغيل باستخدام PowerShell" تثبيت الحزمة بطريقة مساعدة، وهو أمر مفيد للغاية في بيئات الاختبار أو التكامل المستمر.
قبل تحميل أي شيء إلى متجر مايكروسوفت، يُنصح بتشغيل الحزمة من خلال مجموعة أدوات اعتماد تطبيقات ويندوز (WACK)من خلال معالج إنشاء حزمة Visual Studio، يمكنك تشغيل WACK على الجهاز المحلي أو حتى على جهاز Windows 10 بعيد، بشرط أن تكون لديك الأدوات البعيدة والحزمة نفسها مثبتة على هذا الكمبيوتر.
فرقة ذا واك تقدم عرضًا مجموعة من الاختبارات (الأداء، واجهات برمجة التطبيقات المستخدمة، سلوك الخلفية، إلخ) ويُنشئ تقريرًا. إذا اجتاز التطبيق عملية الاعتماد، تصبح الحزمة جاهزة للتقديم إلى مركز الشركاء. يوجد ملف .appxupload أو .msixupload عادةً في مجلد AppPackages الخاص بالحل، ويتضمن اسمه الإصدار والبنى المدعومة.
من الممكن أيضا أتمتة عمليات إرسال الملفات إلى المتجر بدءًا من Visual Studio 2019 فصاعدًاباختيار خيار الإرسال التلقائي إلى متجر Microsoft بعد التحقق من صحة WACK، يجب عليك ربط Azure Active Directory بحساب مركز الشركاء الخاص بك، وإنشاء أو ربط تطبيق Azure AD بدور المسؤول، واسترداد بيانات الاعتماد مثل معرف المستأجر ومعرف العميل ومفتاح العميل.
من خلال ضبط هذه البيانات في مربع حوار خيارات الشحن، يمكن لبرنامج Visual Studio بدء عملية النشر بعد إكمال الاختبارات، يمكنك تتبع حالة الشحنة من نافذة "التحقق والنشر"، مما يقلل من الخطوات اليدوية في مسار النشر الخاص بك.
بفضل هذا النظام البيئي المتكامل من الأدوات وسير العمل والتنسيقات، يصبح MSIX العنصر المركزي لتغليف وتحديث وتوزيع تطبيقات ويندوزسواء كنت تقوم بتحويل المثبتات القديمة باستخدام أداة MSIX Packaging Tool، أو تعتمد على Visual Studio للتطويرات الجديدة، أو تقوم بتنسيق الحزم المعقدة باستخدام MakeAppx.exe، أو تقوم بنشرها في بيئات افتراضية باستخدام app attach، فإننا نقدم عمليات تثبيت أنظف وأكثر تحكمًا جاهزة للعالم الهجين لسطح المكتب المحلي والسحابة.