ما يجب التحقّق منه عندما لا يعمل ActiveX على Office 2024 / Microsoft 365 - الترتيب العمليّ لتغطية التعطيل الافتراضيّ، 32bit / 64bit، تسجيل COM، DLL التابعة، ووصولًا إلى IE mode

· · ActiveX, COM, Office, Microsoft 365, 32bit, 64bit, Windows, الاستفادة من الأصول القائمة

الملخّص التنفيذيّ

  • أوّل ما يجب فهمه هو أنّه على Office 2024 و Microsoft 365، عناصر تحكّم ActiveX في Word / Excel / PowerPoint / Visio معطّلة افتراضيًّا. حتّى القوالب الداخليّة وملفّات الأعمال التي كانت تُفتَح سابقًا قد تظهر فجأةً ‹غير عاملة› بعد تغيير إعداد أو تحديث.
  • يمكن تكثيف الأسباب في ثلاث فئات. تغيّر إعدادات الأمن، وعدم تطابق 32bit / 64bit أو دعم OS، ونقص في تسجيل COM أو DLL التابعة / .NET / Visual C++ runtime. عمليًّا، الأقصر هو معالجتها بهذا الترتيب.
  • أكبر فرق بين عائلة Office 2024 و Microsoft 365 Apps هو نموذج التحديث وفرضيّات الدعم. عائلة Office 2024 تتمحور حول تحديثات الأمن/الجودة، ولا تتلقّى تحديثات ميزات جديدة بصورة مستمرّة. في المقابل، Microsoft 365 Apps يتغيّر باستمرار حسب قناة التحديث. إضافةً إلى ذلك، اعتبارًا من 2026، فإنّ متطلّبات Windows الرسميّة لـ Microsoft 365 Apps تتمحور حول Windows 11 / Windows Server 2022 و 2025. Windows 10 بحدّ ذاته انتهى دعمه بوصفه OS في 2025-10-14، لكنّ Microsoft 365 Apps يَتلقّى تحديثات الأمن على Windows 10 حتّى 2028-10-10 ضمن مهلة الترحيل، ويتلقّى تحديثات الميزات حتّى Version 2608. لا يعني ذلك أنّ ‹Windows 10 لا يعمل مطلقًا›، بل المعالجة الصحيحة هي اعتباره فرضيّة مزدوجة: ‹OS انتهى دعمه، و Apps في مهلة الترحيل›.
  • ممّا يَسهل إغفاله عند العودة بعد فترة هو أنّ معظم سجلّ Registry / السياسات في كلٍّ من Office 2024 و Microsoft 365 يبقى ضمن Office 16.0. كَون اسم المسار لا يحوي 2024 لا يعني أنّك تبحث في المكان الخطأ.

هذا المقال دليل عمليّ يصبّ المراجع الرسميّة من Microsoft في خطوات تحقّق جاهزة للاستخدام في الميدان، انطلاقًا من فرضيّة بيئات Office لإصدار Windows التي تستخدم تقارير داخليّة، وأدوات أعمال تعتمد على Excel، وعناصر تحكّم مدمجة في Word / PowerPoint / Visio، ومكوّنات COM قائمة.

نظرة عامّة ونطاق التأثير

من أجل الإيجاز، نشير في هذا المقال إلى Office 2024 ذي الترخيص الدائم و Office LTSC 2024 مجتمعَين بـ ‹عائلة Office 2024›. معظم نقاط التحقّق التقنيّة مشتركة بينهما.

استيعاب الجدول الزمنيّ التالي يجعل تفسير ‹لماذا توقّف ActiveX فجأةً› أسهل.

timeline
    title Office / Windows / IE mode prerequisite changes
    2024 : Office 2024 family released
         : ActiveX disabled by default in Office / Microsoft 365
    2025-10-14 : End of support for consumer Windows 10
    2026 : Microsoft 365 Apps mainly requires Windows 11 / Server 2022/2025
         : IE mode supported at least through 2029
الجانب عائلة Office 2024 Microsoft 365 Apps المعنى العمليّ
نموذج التحديث يتمحور حول تحديثات الأمن/الجودة، ولا يتلقّى تحديثات ميزات جديدة بصورة مستمرّة. يُحدَّث باستمرار وفقًا لقنوات التحديث: Current Channel، Monthly Enterprise Channel، Semi-Annual Enterprise Channel وغيرها. Current Channel ليس له موعد ثابت مسبقًا، و Monthly Enterprise يستند إلى الثلاثاء الثاني من الشهر. في Microsoft 365 يَسهل ظهور فروق ناتجة عن build / channel، فعند إعادة إنتاج المشكلة يكون تثبيت رقم build أمرًا حاسمًا.
OS المدعوم Office LTSC 2024 يدعم Windows 11 و Windows 11 LTSC 2024 و Windows 10 LTSC 2021/2019 و Windows Server 2025/2022. متطلّبات Windows الرسميّة في 2026 لـ Microsoft 365 Apps لقطاعات الأعمال/التعليم/الحكومة هي Windows 11 و Windows Server 2025/2022. Windows 10 بحدّ ذاته انتهى دعمه بوصفه OS في 2025-10-14، لكنّ Microsoft 365 Apps يَتلقّى تحديثات الميزات على Windows 10 حتّى Version 2608، وتحديثات الأمن حتّى 2028-10-10 ضمن مهلة الترحيل. عندما يقال ‹كان يعمل على Windows 10 ثمّ تغيّر السلوك فجأةً›، فإنّ السبب الأرجح لا يأتي من جانب Apps، بل من عدم اتّساق التعريفات/التحديثات المسبقة بعد EoS لـ OS، أو من تحرّك الفرضيّات في فترة مهلة الترحيل.
الإعداد الافتراضيّ لـ ActiveX معطّل افتراضيًّا في Word / Excel / PowerPoint / Visio. حتّى التفاعل مع الكائنات القائمة يتوقّف. معطّل افتراضيًّا بالمثل. ما يجب الاشتباه به أوّلًا ليس تلف البرنامج، بل تغيّر القيمة الافتراضيّة للأمن.
رقم نسخة Registry / السياسة الإصدار الرئيس لـ Office LTSC 2024 هو 16.0، وتظلّ السياسات / Registry تستخدم 16.0 باستمرار. في Microsoft 365 Apps أيضًا تظلّ المسارات تحت 16.0 مستخدَمة باستمرار. ‹بما أنّه 2024، فلنبحث عن 24.0› هو ضلال نموذجيّ.

حالات الاستخدام التي يَسهل ظهور التأثير فيها هي مصنّفات Excel التي تحوي أزرارًا أو نماذج، وكائنات ActiveX المدمجة في Word / PowerPoint / Visio، وحلول Office القديمة، والتقارير/مساعدات الإدخال الداخليّة المعتمدة على مكوّنات COM. عندما يكون ActiveX معطّلًا، لا يتعذّر إنشاء كائنات ActiveX جديدة فحسب، بل يتعذّر التفاعل مع القائمة منها أيضًا.

قائمة التحقّق المسبقة

من حيث الاستنتاج، إنّ التحقّق من ‹build / bitness في Office›، و‹فرضيّات Windows›، و‹Trust Center›، و‹كيان COM› بالترتيب من الأعلى إلى الأسفل هو الأسلوب الأكثر فعّاليّة. وعلى وجه الخصوص، في Microsoft 365، يلزم النظر إلى فروق القنوات وتأثير تحديثات الأمن على مستوى build.

التصنيف ما يجب التحقّق منه أين يُفحص فخّ شائع
اسم منتج Office / build / نوع التثبيت اسم المنتج، الإصدار، رقم build، هل هو Click-to-Run [ملف] > [حساب] > [معلومات المنتج] الاكتفاء بـ ‹هذه أحدث نسخة› دون النظر إلى build. مقارنة build مهمّة في كلٍّ من عائلة Office 2024 و Microsoft 365.
32bit / 64bit في Office معاينة bitness عبر مربّع حوار [حول ××] [ملف] > [حساب] > [حول Excel/Word] محاولة تحميل COM/ActiveX خاصّ بـ 32bit على Office 64bit ففشلها.
فرضيّات دعم Windows اسم OS، build، هل هو ضمن الدعم شاشة الإعدادات / winver / PowerShell عدم التحقّق من أيّ من فرضيتَي ‹OS انتهى دعمه› و‹Microsoft 365 Apps في مهلة الترحيل› يقع عليها التشغيل الحاليّ.
إعداد ActiveX هل أصبح ActiveX معطّلًا دون إشعار من جانب Office Trust Center > إعدادات ActiveX اعتقاد ‹أنّ الكود تَعطّل›، بينما الواقع هو التعطيل الافتراضيّ.
Protected View / Trusted Documents هل عُومل الملفّ بوصفه من الإنترنت/مرفق/موقع خطر، وهل سُجِّل سابقًا بوصفه موثوقًا Trust Center > Protected View / Trusted Documents المستندات التي مُنحت trust سابقًا تُفتح بسهولة دون تحذير حتّى بعد إضافة ActiveX جديد، فتتحوّل إعادة الإنتاج إلى تابعة للجهاز.
Macro / Trusted Publishers / التوقيع هل وُقِّع، وهل الشهادة في Trusted Publishers Trust Center > إعدادات Macro / Trusted Publishers التوقيع موجود لكن الشهادة غير موزّعة، فلا يصل التنفيذ إلى مرحلة الإذن.
IE mode / الاعتماد على Edge هل الحلّ يفترض legacy Web / Trident Enterprise Site List / سياسات Edge يُظنّ أنّه عطل ActiveX عاديّ، بينما الواقع هو عدم تهيئة IE mode. IE mode لا يسري على جميع المواقع، بل على المواقع المُهيَّأة فقط.
UAC / SmartScreen / AV هل أوقف OS عمليّات التسجيل أو التنزيل الترقية عبر UAC، SmartScreen، سجلّات AV تنزيل ملفّ غير محقَّق التوقيع يُحظَر بـ SmartScreen، فلا يصل DLL أصلًا.
تسجيل COM وجود CLSID / InprocServer32 / TypeLib Registry، reg query DLL مَوضوع لكن COM غير مسجَّل. استخدام regsvr32 مع أنّه assembly في .NET.
التبعيّات DLL تابعة، .NET Framework، Visual C++ Redistributable Process Explorer / Procmon / قائمة الـ runtime الفشل ليس بسبب DLL الرئيس، بل بسبب نقص في VC++ runtime أو .NET.

مرجع سريع لـ Registry والسياسات الرئيسة

في كلٍّ من عائلة Office 2024 و Microsoft 365، عدد المسارات التي ينبغي تذكّرها ليس كبيرًا. المهمّ هما: ‹ابحث عن 16.0›، و‹افصل بين كيان COM والحظر من جانب Office›.

الغرض المسار / السياسة الممثِّلة نقطة الفحص
جذر سياسات Office HKLM\SOFTWARE\Policies\Microsoft\Office\16.0 / HKCU\SOFTWARE\Policies\Microsoft\Office\16.0 حتّى في عائلة Office 2024 ننظر تحت 16.0.
التحقّق من تعطيل ActiveX الإجماليّ HKCU\Software\Microsoft\Office\Common\Security\DisableAllActiveX 1 يعني تعطيلًا إجماليًّا، 0 يعني الإلغاء. يُعامَل مع الالتزام بإعادته إلى الأصل بعد الفحص.
تسجيل كيان COM HKLM\SOFTWARE\Classes\CLSID\{CLSID}\InprocServer32 يُتحقَّق من المسار الفعليّ لـ DLL ومن ThreadingModel.
تسجيل COM لـ .NET HKCR\CLSID\{...} / HKCR\Interface\{...} / HKCR\TypeLib\{...} يُنشأ CLSID / IID / TypeLib عبر Regasm.
الحظر من جانب Office لـ COM HKLM\Software\Microsoft\Office\16.0\Common\COM Compatibility\{CLSID} هذا هو هدف Office COM kill bit للحظر. عند 32bit Office على 64bit Windows يُفحَص جانب Wow6432Node أيضًا.
سجلّ Click-to-Run التفصيليّ HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide يُفعَّل LogLevel و PipelineLogging ويُتحقَّق من %windir%\temp / %temp%.
سجلّ Office العامّ HKCU\Software\Microsoft\Office\16.0\Common\Logging جمع سجلّ تفصيليّ بـ EnableLogging=1.
سياسات IE mode الخاصّة بـ Edge Administrative Templates / Microsoft Edge، SOFTWARE\Policies\Microsoft\Edge يُتحقَّق من Enterprise Site List والإعدادات المتعلّقة بـ IE mode.

سياسات Trust Center في تطبيقات Office تترتّب حسب التطبيق، مثلًا على هذا النحو: Microsoft Excel 2016 > Excel Options > Security > Trust Center. النمط نفسه ينطبق على Word / PowerPoint / Visio / Access. عند الانطلاق من هذه الشجرة، لا تضيع في تتبّع Trusted Locations وما يتعلّق بـ Macro.

خطوات التشخيص التفصيليّة

في الميدان، الأسلوب القياسيّ هو التضييق بترتيب: خطأ الإعدادات، عدم تطابق OS/bitness، مشكلة كيان COM، التبعيّات، فرق التحديثات. التدفّق التالي هو ترجمة هذا الترتيب مباشرةً إلى رسم.

flowchart TD
    A[Reproduce symptom] --> B[Capture Office product, build, bitness, OS]
    B --> C{Are OS/Office prerequisites met?}
    C -- No --> C1[Fix prerequisites: OS / Office edition / channel]
    C -- Yes --> D[Check Trust Center]
    D --> E{Issue with ActiveX/Protected View/Trusted Documents/Publisher?}
    E -- Yes --> E1[Fix settings, signing, distribution design]
    E -- No --> F{Legacy Web / IE-dependent?}
    F -- Yes --> F1[Check IE mode and site list]
    F -- No --> G[Inspect CLSID / InprocServer32 / TypeLib]
    G --> H{Is COM registration valid?}
    H -- No --> H1[regsvr32 / Regasm / reinstall]
    H -- Yes --> I[Check dependent DLLs / .NET / VC++]
    I --> J{Are dependencies satisfied?}
    J -- No --> J1[Repair / redistribute the runtime]
    J -- Yes --> K[Collect logs / Procmon / Process Explorer]
    K --> L[Inspect build delta and security update delta]

أوّلًا التقاط معلومات البيئة

أوّل ما يجب توثيقه هو اسم منتج Office، الإصدار، build، نوع التثبيت، bitness، و build في Windows. على جانب Office نتحقّق عبر [ملف] > [حساب] > [معلومات المنتج]، ثمّ نصل إلى bitness عبر [حول ××]. في عائلة Office 2024 يُقابَل ذلك مع صفحة سجلّ التحديث، وفي Microsoft 365 Apps مع ملاحظات إصدار / قناة التحديث.

# Windows-side prerequisite information
Get-CimInstance Win32_OperatingSystem |
  Select-Object Caption, Version, BuildNumber, OSArchitecture

Get-ComputerInfo |
  Select-Object WindowsProductName, WindowsVersion, OsBuildNumber, OsArchitecture

# If Office apps are running, record the executable paths
Get-Process WINWORD, EXCEL, POWERPNT, VISIO -ErrorAction SilentlyContinue |
  Select-Object ProcessName, Path

عند هذه النقطة، إذا كان Microsoft 365 يعمل على Windows 10 الذي انتهى دعمه بوصفه OS (مع متابعة التشغيل عبر تحديثات الأمن في مهلة الترحيل)، أو عناصر تحكّم خاصّة بـ 32bit مَحمَلة على Office 64bit، فالأسرع هو التحقّق من الفرضيّات قبل الخوض في فحص جانب Apps فقط. متطلّبات Microsoft 365 Apps الحاليّة (تتمحور حول Windows 11 / Server 2022 و 2025، مع تعامل Windows 10 على أساس مهلة الترحيل حتّى 2028-10-10)، وإرشاد Microsoft بضرورة التفكير في Office 32bit عند استخدام إضافات/امتدادات COM خاصّة بـ 32bit، موجودان لهذا السبب بالضبط.

ثمّ تشخيص Trust Center والتحكّم الأمنيّ

التشخيص التالي هو الفصل بين هل الملفّ نفسه محظور، أم فشل تحميل كيان COM. ننظر بالترتيب إلى شريط الرسائل الأصفر لـ ActiveX، و [تمكين المحتوى] في Backstage، و Protected View، و Trusted Documents، و Trusted Publishers. وعلى وجه الخصوص، Trusted Documents يَسهل أن تُحرِّف الفحوصات اللاحقة بمجرّد منح trust، فيلزم الانتباه.

أوّلًا ننسخ الملفّ المُشكِل إلى مجلّد محلّيّ مُدار، ونعيد إنتاج الحالة باسم مختلف عن الأصل. لأنّ ملفّات المشاركة عبر الشبكة، ومرفقات البريد، والملفّات المنزَّلة حديثًا، تخضع بسهولة لتأثير Protected View والحكم بأنّها من الويب. وفي وثائق Microsoft، يُفعَّل Protected View عند مصادر مثل الإنترنت والمواقع الخطرة والمرفقات، وعند جعل المستند Trusted Document يَسهل أن يُفتح المحتوى النشط لاحقًا دون تحذير.

:: Launch Office apps in Safe Mode to isolate add-in effects
excel /safe
winword /safe
powerpnt /safe

:: Backup before changing the registry
reg export HKCU\Software\Microsoft\Office\Common\Security "%USERPROFILE%\Desktop\office-common-security.reg" /y

Safe Mode فعّال لتمييز تأثير الإضافات المحيطة وإعدادات المستخدم. كما أنّ حذف Trusted Publishers وبعض التغييرات لا يمكن إجراؤه إلّا بصلاحيّات المسؤول، لذا عندما تكون ‹الإعدادات رماديّة لا يمكن تغييرها›، نُجرّب تشغيل Office نفسه بوصفه مسؤولًا.

بعد ذلك التحقّق من تسجيل COM والتبعيّات

إذا لم يكن هناك سبب واضح في جانب Trust Center، فالتالي هو CLSID و InprocServer32. أساس COM هو أن يكون ذلك CLSID موجودًا في Registry، وأن يكون مسار DLL الكيانيّ صحيحًا. وعند COM-published assembly في .NET، نستخدم Regasm وليس regsvr32.

:: Standard verification of COM registration
reg query "HKLM\SOFTWARE\Classes\CLSID\{YOUR-CLSID-HERE}\InprocServer32" /s

:: Register / unregister an ActiveX / COM DLL
regsvr32 C:\Path\YourControl.dll
regsvr32 /u C:\Path\YourControl.dll
:: مثال على نشر COM لـ .NET assembly
:: مهمّ: يجب مطابقة bitness في RegAsm مع bitness في Office.
:: التسجيل عبر Framework64 يدخل فقط إلى عرض COM 64bit، فلا يَره Office 32bit.
:: والعكس صحيح: عرض COM 32bit المسجَّل عبر Framework لا يَره Office 64bit.
:: 64bit Windows + 32bit Office (تركيب شائع في الأصول القديمة):
"%WINDIR%\Microsoft.NET\Framework\v4.0.30319\RegAsm.exe" "C:\Path\YourManagedControl.dll" /codebase /tlb

:: 64bit Windows + 64bit Office:
"%WINDIR%\Microsoft.NET\Framework64\v4.0.30319\RegAsm.exe" "C:\Path\YourManagedControl.dll" /codebase /tlb

:: لإدخاله إلى كلا عرضَي COM، نشغّل كلا RegAsm بالتعاقب.

في الصياغة الرسميّة لـ regsvr32، /u لإلغاء التسجيل، و /s صامت، و /i لـ DllInstall. تسجيل COM لـ .NET assembly مبنيّ على Regasm، حيث يُنشأ CLSID / Interface / TypeLib في Registry. ‹تشغيل regsvr32 على managed DLL› خطأ نموذجيّ. وبالنسبة لـ Office، عندما لا تتطابق bitness في RegAsm مع bitness في Office، يحدث الحادث النموذجيّ: التسجيل في Registry ناجح ظاهريًّا، لكنّ Office لا يجده. عند 32bit Office على 64bit Windows استخدم RegAsm من Framework، وعند 64bit Office استخدمه من Framework64.

عند فحص التبعيّات أيضًا، الأسلوب الأكثر عمليّة هو التحقّق من DLL المُحمَّلة عبر Process Explorer، وتتبّع NAME NOT FOUND / PATH NOT FOUND / ACCESS DENIED عبر Procmon. يستطيع Process Explorer إظهار DLL المُحمَّلة، ويستطيع Procmon تتبّع نشاط الملفّات/Registry/العمليّات/الخيوط آنيًّا.

التحقّق من runtime التابع أيضًا يُفضَّل ألّا يُؤجَّل إلى النهاية كثيرًا. تذكر وثائق Microsoft أنّ أحدث .NET Framework هو 4.8.1، وأنّ Visual C++ Redistributable مفترض تثبيت النسخة المناسبة لكلّ جيل من Visual Studio. في أنظمة الأعمال وعناصر التحكّم القائمة، يتكرّر ‹DLL الرئيس موجود، لكنّه لا يقلع بسبب نقص VC++ 2013 / v14 runtime›.

وأخيرًا جمع السجلّات لتحديد ما إذا كانت المشكلة فرق build أو مشكلة كيان

إذا بقي السبب غامضًا حتّى هنا، نُفعِّل السجلّات لالتقاط لحظة إعادة الإنتاج. على جانب Office، توجد طرق لجمع السجلّ العامّ وسجلّ Click-to-Run، وتُرشد Microsoft إلى أنّ الإخراج يكون في %windir%\temp أو %temp%. بالتوازي ننظر إلى Event Viewer > Windows Logs > Application، وعند الحاجة Applications and Services Logs.

:: Office general log
reg add HKCU\Software\Microsoft\Office\16.0\Common\Logging /v EnableLogging /t REG_DWORD /d 1

:: Click-to-Run detailed log
reg add HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v LogLevel /t REG_DWORD /d 3
reg add HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v PipelineLogging /t REG_DWORD /d 1
:: Disable logging
reg delete HKCU\Software\Microsoft\Office\16.0\Common\Logging /v EnableLogging /f
reg delete HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v PipelineLogging /f
reg delete HKLM\SOFTWARE\Microsoft\ClickToRun\OverRide /v LogLevel /f
:: Event Viewer
eventvwr.msc

إذا كان وقت إعادة الإنتاج معلومًا، فالحيلة هي تضييق مراجعة السجلّ إلى دقائق قبل وبعد ذلك. عند الاشتباه بالتبعيّات قد يكون .NET Runtime أو SideBySide في سجلّ Application هو الدليل الحاسم، وفي مشاكل تحديث/إصلاح Office يكون سجلّ Click-to-Run هو الدليل الأقوى.

مرجع سريع للأوامر والأدوات

الغرض مثال مكان الاستخدام
تشغيل Office بأقلّ تركيب excel /safe / winword /safe لتمييز أثر الإضافات وإعدادات المستخدم.
تسجيل/إلغاء تسجيل DLL regsvr32 xxx.dll / regsvr32 /u xxx.dll إعادة تسجيل native COM / ActiveX DLL.
تسجيل COM لـ .NET RegAsm.exe your.dll /codebase /tlb تسجيل COM Visible managed assembly.
سجلّات Office/Click-to-Run reg add ...EnableLogging / reg add ...PipelineLogging الحصول على تفاصيل التحديث/الإقلاع/الإصلاح/إعادة الإنتاج.
الرصد على المستوى المنخفض Procmon / Process Explorer تحديد تحميل DLL، استعلامات Registry، رفض الوصول، DLL التابعة.

الأسباب الشائعة والمعالجات العمليّة

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

العَرَض السبب الشائع منهج المعالجة
زرّ أو كائن مدمج كان يعمل سابقًا أصبح بلا استجابة بعد تحديث Office أصبح ActiveX معطّلًا افتراضيًّا / تغيّر القيم الافتراضيّة في Trust Center أوّلًا نتحقّق من شريط الرسائل، و [تمكين المحتوى] في Backstage، وإعداد ActiveX، ووجود Trusted Document. المعالجة الدائمة هي ترتيب ‹مسار توزيع موثوق وتوقيع› أوّلًا.
الفشل فقط على Office 64bit COM / ActiveX / إضافة خاصّة بـ 32bit نتحقّق من المورِّد عن وجود نسخة x64، وإن لم تتوفّر، الأسلوب الواقعيّ هو التوحيد على Office 32bit. Microsoft نفسها ترشد إلى التفكير في Office 32bit للحفاظ على توافق إضافات COM في 32bit.
لا يعمل إلّا على PC معيّن COM غير مسجَّل، السجلّ تالف، نقص TypeLib نفحص CLSID / InprocServer32 / TypeLib، ونعيد التسجيل عبر regsvr32 أو Regasm، أو عبر مُثبِّت رسميّ.
DLL موجود لكن لا يُحمَّل نقص في DLL تابعة / .NET Framework / VC++ runtime نلتقط عدم تطابق التبعيّات عبر Process Explorer / Procmon، ونصلح/نُعيد توزيع runtime اللازم.
الفشل فقط مع المشاركة الشبكيّة أو مرفق البريد Protected View، MOTW، سياسة Trusted Locations، SmartScreen أوّلًا ننسخ إلى مجلّد محلّيّ مُدار ونرى الفرق في إعادة الإنتاج. نراجع Trust Center و Protected View، ونمنح trust بأضيق نطاق. trusted location عبر الشبكة مكبوحة افتراضيًّا، والافتراض هو التشغيل بحذر.
الفشل في جزء فقط من التكامل مع Web الداخليّ عدم تهيئة IE mode في Edge، عدم تسجيل الموقع في القائمة نضع ذلك الموقع فقط في IE mode. IE mode ليست مفتاحًا شاملًا، بل تفترض قائمة مواقع الشركة والسياسة.
تغيّر السلوك عند نقل خطوات النشر من عصر MSI الانتقال إلى فرضيّة Click-to-Run في عائلة Office 2024 يُذكر صراحةً الانتقال من MSI إلى Click-to-Run. ينبغي مراجعة السكربتات القديمة وتصاميم التسجيل الذاتيّ، شاملةً خطوات النشر والإصلاح.
لا يُسمَح به مع أنّه موقَّع انتهاء التوقيع، عدم توزيع الشهادة، عدم تسجيل Trusted Publisher نتحقّق من صلاحيّة code signing وتوزيع الشهادة، وإن لزم الأمر ندير Trusted Publishers مركزيًّا.

الحلول البديلة والإعدادات الموصى بها

أساس الإجراء الدائم هو ‹عدم خفض الأمن العامّ، بل السماح بشكل محدود فقط للأهداف الضروريّة›. حتّى الوثائق الرسميّة لـ Microsoft تفترض أنّ Protected View و Trusted Documents و Trusted Locations و Trusted Publishers جميعًا تعمل ‹على المصادر الموثوقة فقط›.

معايير سهلة التوصية للمؤسّسات

البند التوصية السبب
قناة التحديث في Microsoft 365، الأجهزة ذات الاعتماد الكثيف على ActiveX القديم تتمحور حول Monthly Enterprise Channel يَسهل قراءة نقاط التغيّر مقارنةً بـ Current Channel، ويَسهل توقّع موعد إدخال الميزات.
bitness في Office ما لم يصرّح المورِّد بدعم x64، نُولي Office 32bit الأولوية في مجموعات المكوّنات الخاصّة بـ x86 فقط إذا كانت أولويّة توافق COM/إضافات 32bit، فهذا الخيار لا يزال فعّالًا عمليًّا.
Trusted Locations trusted location عبر الشبكة محظورة من حيث المبدأ. عند الحاجة نَعتَمد طلب استثناء Microsoft أيضًا تفترض تشغيل trusted location الشبكيّة بحذر.
التوقيع ActiveX / Macro / إضافات الشركة الذاتيّة موقَّعة، و Trusted Publisher مُدارة مركزيًّا استقرار التشغيل أعلى بكثير من إعداد استثناءات لكلّ جهاز.
IE mode إدراج URLs الضروريّة فقط في Enterprise Site List IE mode تفترض المواقع الفرديّة، وينبغي تجنّب جعل البيئة كاملةً قديمة.
التحقّق قبل النشر إنشاء pilot ring قبل التوزيع الإنتاجيّ، والتحقّق على تقارير/أجهزة ممثِّلة بـ build مثبَّت فروق قنوات Microsoft 365 كبيرة، والاختبار المسبق فرضيّة.

مثال سكربت Registry للاختبار

التالي مخصّص للاختبار فقط. قبل اعتماده دائمًا، رتّب توقيع المصدر، والشهادة، ومسار التوزيع. الغرض هو إلغاء التعطيل الإجماليّ لـ ActiveX من أجل تشخيص السبب.

Windows Registry Editor Version 5.00

; Test only: clear Office-wide ActiveX disable
[HKEY_CURRENT_USER\Software\Microsoft\Office\Common\Security]
"DisableAllActiveX"=dword:00000000

عند الرغبة في حظر كائن COM معيّن داخل Office، أو التحقّق من حدوث الحظر، نستخدم آليّة Office COM kill bit. مكان الفحص يختلف بين 64bit Office على 64bit Windows، و 32bit Office على 64bit Windows.

Windows Registry Editor Version 5.00

; Example: block a specific COM object inside Office
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\16.0\Common\COM Compatibility\{YOUR-CLSID-HERE}]
"Compatibility Flags"=dword:00000400

نقاط الانتباه عند التوزيع

في كلٍّ من عائلة Office 2024 و Microsoft 365، ينبغي التفكير في كيان النشر/الإصلاح/التحديث على فرضيّة Click-to-Run. حتّى وثائق Office LTSC 2024 تذكر صراحةً الانتقال من Windows Installer إلى Click-to-Run بوصفه فارقًا مهمًّا. من الضروريّ عدم النقل الحرفيّ لسكربتات التوزيع القديمة من عصر MSI، أو batch التسجيل الذاتيّ، أو فرضيّات وضع DLL يدويًّا.

من أجل التوافق مع ActiveX/COM القديم، إذا أردنا توحيد Microsoft 365 Apps على 32bit و Monthly Enterprise، فالتركيب التالي عمليّ في أداة نشر Office. ليس الهدف ‹ملاحقة الميزات الجديدة بأقصى سرعة›، بل ‹تقليل احتمال كسر أصول الأعمال المفترِضة لـ x86›.

<Configuration>
  <Add OfficeClientEdition="32" Channel="MonthlyEnterprise">
    <Product ID="O365ProPlusRetail">
      <Language ID="ja-jp" />
    </Product>
  </Add>
  <Updates Enabled="TRUE" />
  <Display Level="None" AcceptEULA="TRUE" />
</Configuration>

كملاذ أخير، Quick Repair / Online Repair فعّال أيضًا. لكن مع أنّه يصلح تلف الإعدادات والتسجيل، إلّا أنّه لا يحلّ بحدّ ذاته عدم تطابق x86/x64 أو مشاكل التوقيع/السياسة. الإصلاح في ‹النهاية فقط› يُجنّب تلويث سجلّات التحقيق.

المصادر الرسميّة الأَولى بالاستناد إليها

في الميدان، العودة إلى المعلومات الرسميّة بالترتيب التالي أسرع وأضمن من البحث الواسع في نتائج البحث.

  • التحقّق من واقعة أنّ ActiveX أصبح معطّلًا افتراضيًّا
    وثيقة لتُتحقَّق منها أوّلًا لمعرفة ما تغيّر في Office 2024 / Microsoft 365. تُحدِّد نطاق التأثير على Word / Excel / PowerPoint / Visio.
  • كيفيّة التعامل مع ActiveX في ملفّات Office
    أقرب وثيقة إلى عمليّات المستخدم: شريط الرسائل، [تمكين المحتوى] في Backstage، التفعيل المحدود بالجلسة، وغيرها.
  • سجلّ تحديث عائلة Office 2024
    يُستخدَم لمقارنة build في Office 2024 / LTSC 2024، وفروق ما قبل/ما بعد التحديث، والتحقّق من التحديث اليدويّ.
  • قنوات تحديث / ملاحظات إصدار Microsoft 365 Apps
    لازمة لتتبّع الفرق بين Current / Monthly Enterprise / Semi-Annual، وفروق السلوك الناتجة عن channel.
  • معايير الحكم الرسميّة على 32bit / 64bit في Office
    أهمّ وثيقة عند تورّط أصول x86 في ActiveX / COM.
  • الوثائق الرسميّة المتعلّقة بـ IE mode
    لتحديد ما إذا كانت الحالة تحتاج إلى IE mode في Edge، والتحقّق من Enterprise Site List وأسماء السياسات.
  • COM / regsvr32 / Regasm / COM kill bit
    وثائق أساسيّة لمعرفة أين يحدث الفشل: التسجيل، TypeLib، CLSID، InprocServer32، أم الحظر من جانب Office.
  • Procmon / Process Explorer
    السلاح الأخير عند ‹الإعدادات صحيحة لكنّه لا يعمل›. يَكشف واقع تحميل DLL التابعة واستعلامات Registry.
  • .NET Framework / Visual C++ Redistributable
    مرجع للحالات التي يسقط فيها التشغيل بسبب نقص في runtime محيط، لا في عنصر التحكّم نفسه.

تبدو مشاكل ActiveX حدسيًّا ‹مشكلة Excel فقط›، لكنّها فعليًّا مشكلة تتقاطع فيها القيم الافتراضيّة لأمن Office، وفرضيّات دعم Windows، وتسجيل كيان COM، و runtime التابع، ونموذج التحديث. مع التشخيص بالترتيب الموصوف، نصل إلى إصلاح أقلّ عرضةً للتكرار، دون إرخاء الإعدادات عشوائيًّا.

أحدث المقالات التي تشترك في نفس الوسوم. عمّق فهمك بمواضيع مرتبطة.

دليل المراجعة الشاملة لـ VBA و Excel macro والأدوات الداخليّة استعدادًا لإيقاف VBScript - الجرد / الكشف الساكن / سجلّات التشغيل / اختيار البديل / الاختبار / النشر التدريجيّ

ملخّص عمليّ على صفحة واحدة لمسار الاستعداد لإيقاف VBScript تدريجيًّا: جرد VBA و Excel macro والأدوات الداخليّة، الكشف الساكن، تجميع سجلّا...

ترتبط هذه المقالة بشكل طبيعي بصفحات الخدمات التالية.

الملف الشخصي للمؤلف

صفحة الملف الشخصي لمؤلف المقالة.

غو كومورا

مؤسّس شركة كومورا سوفت ذ.م.م.

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

روابط عامة

العودة إلى المدونة