الدليل · أين يعمل

هل يعمل Lang Switcher في نوافذ البرامج التي تعمل كمسؤول؟

نعم. يُثبَّت Lang Switcher في C:\Program Files، وينشئ المثبّت على الكمبيوتر شهادة خاصة به لتوقيع الكود فقط: يوقّع بها Lang Switcher ويتلف مفتاحها فورًا، وعند إلغاء التثبيت يزيل الشهادة أيضًا. لهذا يسمح Windows لبرنامج Lang Switcher بالعمل في نوافذ البرامج التي تعمل كمسؤول. أما في شاشات طلب UAC وCtrl+Alt+Del وتسجيل الدخول فلا يمكن التقاط الضغطات: هذا قيد من Windows.

لماذا يعمل

صلاحيات المسؤول — مرة واحدة، عند التثبيت: يُثبَّت Lang Switcher في C:\Program Files\Lang_Switcher، وينشئ المثبّت على الكمبيوتر شهادة ليعمل Lang Switcher أيضًا في نوافذ البرامج التي تعمل كمسؤول (البيان uiAccess). أما Lang Switcher نفسه فيعمل بلا صلاحيات المسؤول.

uiAccess آلية من Windows نفسه: تستخدمها أيضًا لوحة المفاتيح على الشاشة والمكبّر والراوي. يحصل البرنامج على إذن بالعمل في النوافذ الأعلى مستوى، لكنه لا يحصل على صلاحيات المسؤول. ولا يمنح Windows هذا الإذن إلا إذا كان ملف البرنامج موقّعًا بتوقيع يثق به هذا الكمبيوتر وكان في C:\Program Files.

لهذا السبب يبدأ التشغيل مع Windows أيضًا بلا طلب UAC: العلامة على «التشغيل عند تسجيل الدخول» لا تسأل شيئًا.

أين لا يعمل

في شاشات طلب UAC وCtrl+Alt+Del وتسجيل الدخول لا يمكن التقاط الضغطات: هذا قيد من Windows. لا يصل إلى هناك أي برنامج غير النظام نفسه.

وكذلك في بعض الألعاب: تقرأ هذه الألعاب لوحة المفاتيح من دون Windows ولا تقبل استبدال النص. أضف مثل هذه الألعاب إلى الاستثناءات.

النسخة البديلة

إذا شُغّل المثبّت بالخيار /NOLOCALCERT، يثبّت النسخة البديلة: الكود نفسه، بلا uiAccess. تعمل النسخة البديلة في كل مكان، إلا نوافذ البرامج التي تعمل كمسؤول: هناك لا أثر لمفتاح الاختصار.

إذا تعذّر تثبيت النسخة الكاملة على هذا الكمبيوتر، يثبّت المثبّت النسخة البديلة بنفسه. وعندها يخبرك في نهاية التثبيت بنافذة: «تم تثبيت Lang Switcher، لكنه لن يعمل في نوافذ البرامج التي تعمل كمسؤول…» إذا رأيت هذه النافذة، فاكتب إلى المؤلف: قائمة الأيقونة ← «الكتابة إلى المؤلف…».

الأسئلة والمشكلاتفي GitHub Issues ↖ أو عبر البريد send.me@panda-pishet-kod.dev