windows - كيفية تعيين "تشغيل هذا البرنامج كمسؤول" برمجيا




properties compatibility (5)

أواجه مشكلة مع جيد 'bdeadmin.exe في ويندوز فيستا. أولا، دعونا نحصل على الاستجابات المتوقعة من الطريق:

"يجب ألا تطلب رفع طلبك."
هذا واحد لا. هذه هي الحياة.

"يجب تضمين ملف بيان."
هو بالفعل تجميعها، فمن سنوات عديدة من العمر، الشركة التي خلقت لديها أي نية للقيام بذلك مرة أخرى، ويتم تثبيته من وحدة دمج (ملف مسم).

"بد هو عفا عليها الزمن، يجب أن تستخدم دبكسريس"
واحد ونصف مليون خط من التعليمات البرمجية. 'قال ناف.

"إسقاط ملف بيان بجوار إيكس."
حاول ذلك، لم يفعل شيئا. كاختبار، كان نفس ملف البيان قادرا على جعل عدة ملفات إيكس أخرى تتطلب الارتفاع، وليس فقط أردت. هناك شيء في هناك يمنع قراءة البيان الخارجي.

"إنشاء اختصار وتعيين SLDF_RUNAS_USER."
لا يمكن القيام بذلك، انها لوحة التحكم التطبيق الصغير.

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


استخدام برنامج التفاف الذي يستخدم شليكسكيوت الذي يستخدم "روناس" ك "الفعل" لتشغيل البرنامج الذي تريده.


حزمة التطبيق الخاص بك إلى وينرار سفكس مع الوضع الصامت + وضع طلب المشرف.

أبسط بكثير من العبث مع .MSI المتغيرات.


لقد وجدت أن الأسلوب ملف .manifest لا يعمل إذا كان .exe تحت C:\Program files\... و .exe تم تشغيلها سابقا دون ملف .manifest . يتذكر ويندوز .manifest من أول مرة يتم تشغيل .exe . وهذا يعني أنه لا يمكنك فقط إرسال البيان عندما يشكو المستخدمون من عدم تشغيل عمليات التثبيت الخاصة بهم. يجب أن يتم وضع ملف البيان قبل أو أثناء التثبيت نفسه الذي يضع .exe .

يقوم ويندوز بإعادة فحص .manifest إذا تغيرت .exe (مثل إصدار جديد أو عدد مختلف من وحدات البايت)


هذا هو لقطة طويلة، ولكن إذا كان لديك كلمة "الإعداد" أو "تثبيت" في اسم إيكس، سوف ويندوز المطالبة للارتفاع عند تشغيله. أنا لا أعرف إذا كان ذلك سوف تعمل مع لوحة التحكم الصغير، على الرغم من.


يمكنك برمجيا تعيين "تشغيل هذا البرنامج كمدير" العلم (الخيار الذي تجده في علامة التبويب التوافق من خصائص إيكس)، عن طريق تعيين مفتاح تسجيل بسيط. يجب إنشاء قيمة سلسلة (REG_SZ) ضمن إحدى هذه المفاتيح (إذا كنت تريد أن يكون الإعداد لكل مستخدم أو لكل جهاز، على التوالي):

HKEY_CURRENT_USER \ سوفتوار \ ميكروسوفت \ ويندوز نت \ كيرنتفرزيون \ أبكومباتفلاغس \ لايرس

أو

HKEY_LOCAL_MACHINE \ سوفتوار \ ميكروسوفت \ ويندوز نت \ كيرنتفرزيون \ أبكومباتفلاغس \ لايرس

اسم القيمة يجب أن يكون المسار الكامل إلى القابل للتنفيذ (إذا كان المسير يحتوي على مسافات، لا تحيط بالمسار مع علامات الاقتباس) ويجب أن تحتوي بيانات القيمة على السلسلة RUNASADMIN .

لعينة:

reg.exe Add "HKLM\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers" /v "C:\Program Files\MyApp\Test.exe" /d "PUT__VALUE__HERE"

وسائط التوافق

WIN95 ويندوز 95
WIN98 ويندوز 98
WIN4SP5 ويندوز نت 4.0 SP5
WIN2000 ويندوز 2000
WINXPSP2 ويندوز زب SP2
WINXPSP3 ويندوز زب SP3
فيستارتم فيستا
VISTASP1 فيستا SP1
VISTASP2 فيستا SP2
WIN7RTM ويندوز 7
WINSRV03SP1 ويندوز سيرفر 2003 المزود بحزمة الخدمة SP1
WINSRV08SP1 ويندوز سيرفر 2008 المزود بحزمة الخدمة SP1

مستوى الامتياز

روناسادمين تشغيل البرنامج كمسؤول

ريج أد "هكلم \ سوفتوار \ ميكروسوفت \ ويندوز نت \ كيرنتفرزيون \ أبكومباتفلاغس \ لايرس" / v "C: \ تيمب \ كومباتموديل \ iconsext.exe" / t REG_SZ / d "WINXPSP3 روناسادمين" / f

المراجع: http://www.verboon.info/2011/03/running-an-application-as-administrator-or-in-compatibility-mode/





runas