سؤال

أحاول إنشاء وظيفة إضافية مشتركة باستخدام VS 2008 لـ Office XP (Excel على وجه الدقة).ومع ذلك، بعد إنشاء المشروع في Visual studio وتغيير المراجع إلى Office XP (بصرف النظر عن القابلية للتوسعة التي لا يبدو أنني قادر على العثور على نسخة منها لـ Office XP) وإضافة ملف excel.exe إلى المراجع أيضًا.لا يبدو أنني الآن قادر على تثبيت الوظيفة الإضافية على أي جهاز كمبيوتر.

هل لدى أي شخص أي أدلة حول كتابة إضافات Office XP باستخدام VS 2008 (إضافات Com التي قد أضيفها)؟

هل يعرف أحد المرجع الذي من المفترض أن أحصل عليه أو الأشياء السابقة التي من المفترض أن أقوم بتثبيتها على جهاز الكمبيوتر؟

لدي ثلاثة أجهزة كمبيوتر اختبارية، وهذا الجهاز به Office XP و2003 و2007 ويمكنني كتابة ملحق باستخدام مراجع 2003 التي تعمل على هذا ولكن لا يوجد صندوق آخر.واحد به Office XP فقط ولكن أيضًا Office XP PIAs مثبت عليه و.NET والآخر مثبت عليه Office XP فقط.

أي مساعدة ستكون موضع تقدير كبير.

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

المحلول

لقد وجدت المشكلة مع هذا في النهاية.

جاءت المشكلة من إدخال KB 908002.لسوء الحظ، لتشغيل الإصلاح، تحتاج إلى تثبيت Visual Studio 2005 وOffice 2003 وإلا فلن يتم نشر الإصلاح، ولذا فقد قمت بتغطية هذا الأمر عدة مرات.في النهاية، عثرت على نسخة قديمة من VS2005 وOffice 2003 على جهاز احتياطي، وقمت بتثبيت الإصلاح، وإنشاء برنامج تثبيت، وجربته على جهاز يعمل بنظام Office XP وعمل كل شيء على ما يرام.

هناك إصلاحان ضروريان لكي يعمل هذا على أي جهاز يعمل بنظام Office XP:

extensibilityMSM.msi - installs the extensibility.dll
lockbagRegKey.msi    - adds a fix to a registry key

لم أتمكن من العثور على هذه العناصر ليتم تنزيلها بشكل منفصل عن الإصلاح KB908002 ولكن لدي نسخًا محليًا.

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

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

نصائح أخرى

أنت بحاجة إلى تثبيت PIAs كشرط أساسي.هل يتم تثبيت الوظيفة الإضافية على الإطلاق أم يفشل في التثبيت؟قد يتم حظر الوظيفة الإضافية التي تعمل بشكل غير صحيح عند بدء التشغيل بواسطة التطبيق المضيف (Excel).يمكنك تجديده في مربع حوار إعدادات الوظيفة الإضافية في Excel.

@PintSizedCat - هنا هو رابط لمدونة msdn يوضح كيفية استخراج msi دون تثبيت VS2005.

راجع القسم "إنشاء مشروع إعداد الوظيفة الإضافية لـ COM المشترك" - استخدم سطر الأوامر:

vs2005-kb908002-enu-x85.exe /T:”C: est” /C

بالنسبة لنا، كان Excel 2003 مزودًا بـ .Net 2.0 وكان ملف extensibility.dll مفقودًا.لا أعتقد أن VS2008/VS2010 يمتلكان هذا كشرط أساسي.ملف dll غير قابل لإعادة التوزيع (ووفقًا لهذا مدونة - راجع قسم "الإجابة") - يجب عليك استخدام msi لإعادة توزيعه.

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