سؤال

لدينا أداة تثبيت لتطبيقنا يجب تنزيلها وتشغيلها بامتيازات المسؤول، مثل العديد من أدوات التثبيت الأخرى.ومع ذلك، لا يُسمى برنامج التثبيت "setup.exe"، لذلك لا يكتشف Windows تلقائيًا أنه يتطلب الارتفاع للتشغيل.

إن تغيير اسم المثبت لرفع مستوى الأشياء بشكل صحيح يبدو أمرًا فوضويًا للغاية، بصراحة. هذا المقال يتحدث كثيرًا عن UAC والارتفاع، ويقول أنه يمكنك استخدام البيان لجعل شيء ما يتطلب ترخيصًا.

لذا، نود فقط إنشاء بيان لبرنامج التثبيت الخاص بنا.ولكن كيف نتأكد من وجود المانيفست؟إذا قام المستخدم فقط بتنزيل Our_application_v13.exe، فكيف نضمن حصوله على البيان أيضًا؟AFAIK يجب أن يكون البيان ملفًا باسم "our_application_v13.exe.manifest" في هذه الحالة.

نظرًا لأنهم يقومون فقط بتنزيل ملف من موقعنا على الويب، فكيف نتأكد من حصولهم على البيان أيضًا؟هل يمكننا دمجه في الملف القابل للتنفيذ بطريقة ما، أو وضع علامة على الملف القابل للتنفيذ على أنه يتطلب الترقية؟نحن نستخدم أداة تثبيت منذ مئات السنين ولا يمكننا تغييرها، لذلك ليس لديها أي إمكانات ذات صلة بهذا.

شكرًا!

هل كانت مفيدة؟

المحلول

إذا الأداة المثبت يسمح لك بتغيير / إرفاق / تحرير موارد ملف EXE ولدت، يمكنك إضافة ملف البيان كمورد مع نوع مورد من 24 (RT_MANIFEST في رؤوس ويندوز) ومعرف الموارد 1.

إذا لم يكن لديك أداة المثبت بنيت في منشأة لادخال موارد، ثم قد يكون لديك لكتابة أداة لمرحلة ما بعد العملية ملف INSTALL.EXE لإدراج المورد. بحث عن واجهات برمجة التطبيقات ويندوز BeginUpdateResouce و EndUpdateResource. لديهم بعض القيود - أنها لا تميل إلى العمل إذا كان EXE لا يحتوي بالفعل أي ملفات الموارد على الإطلاق، ولكن معظم تثبيت أداة ملفات إكس الناتجة تحتوي على معلومات إصدار المورد على الأقل.

وأيضا، إذا كان تثبيت التوقيع رقميا التي سوف يتعين القيام به بعد الإدراج من الموارد واضح.


وأيضا، طن متري. إكس تضمينه مع SDK منصة ومعظم إصدارات استوديو البصرية لديها خيارات لتضمين، واستخراج ودمج الموارد واضح.

نصائح أخرى

والظاهر يمكن أيضا أن تكون في قسم الموارد الأصلي للتطبيق (داخل EXE).

هنالك وحدة تحكم موالف الموارد من برنامج Heaventools

Resource Tuner Console هي أداة سطر أوامر تمكن المطورين من أتمتة المعالجة اللاحقة لملف التثبيت الخاص بك وإدراج مورد البيان.انظر على وجه التحديد إضافة بيان التطبيق الصفحة لمزيد من التفاصيل:

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top