أتمتة excel com عبر المستخدم التفاعلي تتوقف عن العمل عند إيقاف تشغيل المستخدم

StackOverflow https://stackoverflow.com/questions/4234615

  •  26-09-2019
  •  | 
  •  

سؤال

لقد قمت بتطوير تطبيق خادم يستخدم أتمتة Excel 2007 COM لتحويل بعض ملفات XLS. تم تشغيله كخدمة على مثيل مركز بيانات Windows ، الذي يعمل تحت مستخدمه الخاص ، واضطررت إلى تغيير إعدادات الأمان DCOM ("إطلاق كمستخدم تفاعلي") لجعله يعمل.

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

هل يعاني أي شخص من نفس المشكلة؟

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

المحلول

حسنًا ، لذلك لم أتمكن من الحصول على Excel للعمل بدون مستخدم تفاعلي ، لن تفعل أي قدر من خداع DCOMCNFG. لذلك قمت ببساطة بتكوين Autologin للمستخدم الذي يتم تشغيل الخدمة تحت (انظر http://support.microsoft.com/kb/315231 للتعليمات).

هذا له تأثير على Server Bootup ، سيقوم المستخدم بتسجيل الدخول كجلسة وحدة تحكم تفاعلية. على عكس جلسات RDP ، هذا دائم ويجعل Excel سعيدًا.

تلميحات أخرى لأرواح Poors الذين يتعين عليهم القيام بشيء مماثل:

  • قم بإنشاء المجلد C: Windows System32 [أو syswow64] config systemprofile desktop
  • تأكد من تكوين الطابعة الافتراضية للمستخدم يتم تشغيل الخدمة تحت
  • قم بتغيير إعدادات DCOMCNFG (MMC -32 ، إضافة "خدمات مكون") من Excel لتشغيلها باستخدام الحساب التفاعلي
  • تغيير الافتراضات Global DCOM للسماح بالوصول المحلي والإطلاق المحلي والتنشيط المحلي للمستخدم ، يتم تشغيل الخدمة

نصائح أخرى

لقد واجهت هذه المشكلة ، ووجدت أن الإجابة موجودة بالفعل في DCOM Configuration.

فعلت ما يلي لحل المشكلة:

  1. افتح خصائص Excel DCOM
  2. اذهب إلى Identity التبويب
  3. يختار This User
  4. أدخل بيانات اعتماد شخص لديه إمكانية الوصول إلى Excel

قد تحتاج إلى الذهاب إلى Security علامة التبويب وتأكد من أن المستخدم الذي حددته أعلاه لديه أذونات مناسبة.

بعد القيام بذلك ، تمكنت من تسجيل الخروج من الخادم مع الاستمرار في استخدام مكتبات أتمتة Excel Com.

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

جانب الخادم:

أ) تبديل "المستخدم التفاعلي" إلى "هذا المستخدم".

ب) "هذا المستخدم" يعمل فقط بعد إنشاء هذه المجلدات :

  • C: windows syswow64 config systemprofile desktop
  • C: windows system32 config systemprofile desktop

ج) انتظرها ... الخطوة ب) تثير النوافذ لإنشاء تلقائي:

  • C: Users Default Desktop

ملاحظة أن تعريف "المستخدم التفاعلي" هو التعرف على كل ما يتم تسجيله النشط في المستخدم إلى الخادم. وبالتالي الفشل في تشغيل MS Office عندما لا يكون أي مستخدم نشطًا على الخادم.

أي ، بالنسبة لي ، كان الحل مزيجًا من الحلول المقترحة بالفعل. لقد استخدمت Office 2013 (x86) على Win 2012R2. كانت مشكلتي بدلاً من ذلك مع Word (لاستخدام WordTopDF).

تفاصيل الخطوة ب:

  • تسجيل الدخول إلى الخادم> ابدأ> تشغيل dcomcnfg.exe (لبدء خدمات المكونات)> جذر وحدة التحكم> خدمات المكونات> أجهزة الكمبيوتر> جهاز الكمبيوتر الخاص بي> تكوين DCOM ...
  • قم بالتمرير إلى "مستند Microsoft Word 97 - 2003" أو "تطبيق Microsoft Excel" (... أي ، أي شيء MS Office الذي تحتاج إلى تشغيله) ...
  • انقر بزر الماوس الأيمن فوقه وحدد "خصائص"> علامة تبويب الهوية> اختر "هذا المستخدم"> أدخل بيانات الاعتماد لبعض المستخدمين مع الوصول إلى MS Office على الخادم. (لقد استخدمت مستخدمًا مع أذونات المسؤول.)

تفاصيل الخطوة ج:

  • يتراوح الانتظار من 5 دقائق إلى الليل. اختياريا ، قم بإنشاء هذا المجلد يدويًا (إذا لم يكن المجلد موجودًا وكنت في عجلة من أمره لإكمال الاختبار).

إذا كان الحساب الذي يعمل Excel هو المسؤول ، فسيعمل هذا:

بالنسبة إلى 64 بت (x64) ، قم بإنشاء هذا المجلد: c: windows syswow64 config systemprofile desktop لـ 32 bit (x86) ، قم بإنشاء هذا المجلد: c: windows system32 config systemprofile desktop على خلاف ذلك إلى حل هذه المشكلة اتبع هذه الخطوات:

  1. تسجيل الدخول إلى الخادم الخاص بك كمسؤول
  2. انتقل إلى "ابدأ" -> "تشغيل" وأدخل "MMC Comexp.MSC /32"
  3. انتقل إلى خصائص تطبيق Microsoft Excel ، ضمن الهوية ، قم بتغييره إلى المستخدم التفاعلي من مستخدم التشغيل (والذي يتم تعيينه افتراضيًا).
  4. انتقل إلى خصائص مصنف Microsoft Office Excel 2007 ، تحت الهوية ، قم بتغييره إلى المستخدم التفاعلي من مستخدم التشغيل (الذي يتم تعيينه افتراضيًا).
  5. انتقل إلى علامة تبويب الأمان لتطبيق Microsoft Excel وحدد تخصيصًا لـ "أذونات التشغيل والتفعيل" وإضافة حساب (بموجبه يتم تشغيل Excel) إليه ومنحه "الإطلاق المحلي" و "التنشيط المحلي"
  6. انتقل إلى علامة تبويب الأمان لمصنفات Microsoft Office Excel 2007 وحدد تخصيصًا لـ "أذونات الوصول" وإضافة حساب (بموجبه يتم تشغيل Excel) إليه ومنحه "الوصول المحلي"
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top