كيف يمكنني بدء تشغيل MS Office Word من .NET بدون الوظائف الإضافية؟
سؤال
أنا أستخدم MS Office 2003 PIA لإنشاء مستند MS Word من c#.
ApplicationClass officeApplication = new ApplicationClass();
هل هناك أي طريقة لتحديد أنني لا أريد تحميل أي وظائف إضافية للمكتب باستخدام هذه الطريقة؟
يحرر:
أعلم أنه يمكن القيام بذلك عبر سطر الأوامر لذلك أنا متأكد من أنه يجب أن تكون هناك طريقة للقيام بذلك من خلال الكود:
"C:\Program Files\Microsoft Office\Office11\Winword.exe" /a
المحلول
يقوم هذا الرمز بإلغاء تحميل الوظائف الإضافية
officeApplication.AddIns.Unload(false);
تم التعديل:
عندما تحتاج إلى المزج بين بدء العملية وإمكانية استخدام واجهة "تطبيق" المكتب، فأنت بحاجة إلى Marshal.GetActiveObject يأمر.
مثال :
//startup without plugins
System.Diagnostics.Process.Start(
@"Winword.exe",
@"/a");
//give a time for startup
Thread.Sleep(2000);
//attach to office
Application officeApplication = (Application)Marshal.GetActiveObject("Word.Application");
نصائح أخرى
وهذه محاولة
System.Diagnostics.Process.Start(
@"C:\Program Files\Microsoft Office\Office11\Winword.exe",
@"/a");
لا تنتمي إلى StackOverflow