مشاركة عبر


كيفية القيام بما يلي: إزالة ملحقات التعليمات البرمجية المدارة من المستندات

ينطبق على

تنطبق المعلومات الموجودة في هذا الموضوع فقط على أنواع المشاريع وإصدارات Microsoft Office التالية: لمزيد من المعلومات، راجع الميزات المتوفرة بواسطة تطبيقات Office و نوع المشروع.

نوع المشروع

  • مشروعات على مستوى المستند

إصدار Microsoft Office

  • Excel 2007 و Excel 2010

  • Word 2007 و Word 2010

يمكنك برمجياً إزالة تجميع التخصيص من المستند أو المصنف الذي يعد جزءاً من التخصيص علي مستوى المستند لـ Microsoft Office Word أو Microsoft Office Excel. يمكن للمستخدمين بعد ذلك فتح المستندات و عرض المحتويات, ولكن لن تظهر أي واجهة مستخدم (UI) مخصصة تقوم بإضافتها للمستندات و لن يتم تشغيل التعليمة البرمجية الخاصة بك.

يمكنك إزالة تجميع التخصيص باستخدام أحد أساليب RemoveCustomization المتوفرة بواسطة Visual Studio Tools لوقت تشغيل Office. ستعتمد الطريقة التي تستخدمها على ما إذا كنت تريد إزالة التخصيص في وقت التشغيل (أي، خلال تنفيذ تعليمة برمجية في التخصيص أثناء فتح مستند Word أو مصنف Excel)، أو إذا كنت ترغب في إزالة التخصيص من مستند مغلق أو مستند موجود على خادم ليس به Microsoft Office مثبت.

ارتباط إلى فيديو للحصول على عرض فيديو توضيحي ذي صلة، راجع كيف يمكنني القيام بما يلي: إرفاق أو فصل تجميع VSTO من مستند Word ؟.

لإزالة تجميع التخصيص في وقت التشغيل

  • في تعليماتك البرمجية الخاصة بالتخصيص، قم باستدعاء الأسلوب Document.RemoveCustomization (لـ Word) أو أسلوب Workbook.RemoveCustomization (لـ Excel). هذا الأسلوب يجب استدعاؤه فقط بعدما لم يعد هناك حاجة للتخصيص.

    مكان استدعائك لهذا الأسلوب في التعليمة البرمجية الخاص بك يعتمد على كيفية استخدام التخصيص الخاص بك. على سبيل المثال، إذا كان العملاء يقومون باستخدام ميزات التخصيص الخاصة بك حتى يصبحوا جاهزين لإرسال المستند إلى عملاء آخرين تحتاج فقط إلى المستند نفسه (ليس التخصيص)، يمكنك توفير بعض UI التي تستدعي RemoveCustomization عندما يقوم العميل بالنقر فوقها. بدلاً من ذلك، إذا قام التخصيص الخاص بك بملء المستند بالبيانات عندما يفتح لأول مرة، و لكن لا يوفر التخصيص أي من الميزات الأخرى التي يتم الوصول إليها مباشرة بواسطة العملاء، إذاً يمكنك استدعاء RemoveCustomization بمجرد انتهاء التخصيص من تهيئة المستند الخاص بك.

لإزالة تجميع التخصيص من مستند مغلق أو مستند على خادم

  1. قم بفتح مشروع موجود في أحد إصدارات يتضمن Microsoft المكتب أدوات المطور.

    • يطبق .NET Framework 4السمة إلى الخاص بك فئة، ثم قم بتعيين هذه السمة إلى القيمة التعداد.

    • يمكن عرض الواجهة IDispatch بدلاً من ذلك بواسطة تطبيق السمة إلى الفئة، و بواسطة تعيين هذه السمة أو القيمة التعداد.

  2. قم بإضافة العبارات Imports أو using التالية لأعلى ملف التعليمة البرمجية الخاصة بك.

    Imports Microsoft.VisualStudio.Tools.Applications
    
    using Microsoft.VisualStudio.Tools.Applications;
    
  3. قم باستدعاء الأسلوب الثابت RemoveCustomization الخاص بفئة ServerDocument و تحديد مسار مستند الحل الخاص بالمعلمة.

    يفترض مثال التعليمة البرمجية التالية أن تقوم بإزالة التخصيص من مستند باسم WordDocument1.docx على سطح المكتب.

    Dim documentPath As String = System.Environment.GetFolderPath( _
        Environment.SpecialFolder.Desktop) & "\WordDocument1.docx"
    Dim runtimeVersion As Integer = 0
    
    Try
        runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath)
        If runtimeVersion = 3 Then
            ServerDocument.RemoveCustomization(documentPath)
            System.Windows.Forms.MessageBox.Show("The customization has been removed.")
        End If
    Catch ex As FileNotFoundException
        System.Windows.Forms.MessageBox.Show("The specified document does not exist.")
    Catch ex As IOException
        System.Windows.Forms.MessageBox.Show("The specified document is read-only.")
    Catch ex As InvalidOperationException
        System.Windows.Forms.MessageBox.Show("The customization could not be removed." & _
            vbLf & ex.Message)
    End Try
    
    string documentPath = System.Environment.GetFolderPath(
        Environment.SpecialFolder.Desktop) + @"\WordDocument1.docx";
    int runtimeVersion = 0;
    
    try
    {
        runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath);
    
        if (runtimeVersion == 3)
        {
            ServerDocument.RemoveCustomization(documentPath);
            System.Windows.Forms.MessageBox.Show("The customization has been removed.");
        }
    }
    catch (FileNotFoundException)
    {
        System.Windows.Forms.MessageBox.Show("The specified document does not exist.");
    }
    catch (IOException)
    {
        System.Windows.Forms.MessageBox.Show("The specified document is read-only.");
    }
    catch (InvalidOperationException ex)
    {
        System.Windows.Forms.MessageBox.Show("The customization could not be removed.\n" +
            ex.Message);
    }
    
  4. يحصل الكائن الذي يمثل المكشوفة في إضافة-بوصة Therefore, you do not have إلى perform أي خاص tasks إلى نشر a نموذج منطقة.Visual Studio Tools لـ Office Runtime

راجع أيضًا:

المهام

كيفية القيام بما يلي: إرفاق ملحقات تعليمات برمجية مدارة إلى المستندات

المبادئ

إدارة المستندات على خادم باستخدام فئة ServerDocument