مشاركة عبر


ServerDocument.AddCustomization أسلوب (String, String, Guid, Uri)

يصل تخصيص على مستند المحدد باستخدام مستند المحدد، واسم الجمعية، ومعرف الحل، ونشر بيان.

مساحة الاسم:  Microsoft.VisualStudio.Tools.Applications
التجميع:  Microsoft.VisualStudio.Tools.Applications.ServerDocument (في Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll)

بناء الجملة

'إقرار
Public Shared Sub AddCustomization ( _
    documentPath As String, _
    assemblyName As String, _
    solutionId As Guid, _
    deploymentManifestUrl As Uri _
)
public static void AddCustomization(
    string documentPath,
    string assemblyName,
    Guid solutionId,
    Uri deploymentManifestUrl
)

المعلمات

  • documentPath
    النوع: System.String
    مسار الكامل للمستند إلى الذي تريده إلى إرفاق cusإلىmization.
  • assemblyName
    النوع: System.String
    مسار كامل التجميع للتخصيص.يجب أن يكون مسار المحلي ملف الالنظام أو UNC يجعله مشتركًا؛ لا يمكنك تحديد الموقع HTTP.
  • solutionId
    النوع: System.Guid
    المعرف الفريد عمومي الذي Visual Studio Tools لوقت تشغيل Officeيستخدم إلى التعرف على الحل.
  • deploymentManifestUrl
    النوع: System.Uri
    عنوان URL الخاص توزيع بيان الحل.

استثناءات

استثناء: شرط
ArgumentNullException

documentPathorassemblyNameهوnullمرجع خالٍ (لا شيء في Visual Basic)أو فارغ.

FileNotFoundException

documentPathأوassemblyNameيشير إلى ملف غير موجود.

DocumentAlreadyCustomizedException

مستند المحدد بواسطة documentPathبالفعل التخصيص.

DocumentNotCustomizedException

مستند المحدد بواسطة documentPathهو معطوب، أو قام بتقييد permهوsions.

UnknownCustomizationFileException

مستند المحدد بواسطة documentPathملحق اسم ملف معتمد بواسطة Visual Studio Tools لوقت تشغيل Office.

ملاحظات

AddCustomizationيقرن أسلوب التخصيص المحدد بالمستند بواسطة إضافة _AssemblyName _AssemblyLocationخصائص مستند المخصصة للمستند. تعرف هذه الخصائص يحتوي تخصيص مستند وقم بتحديد موقع النشر بيان. بعد استدعاء هذا الأسلوب هو بنجاح، في المرة التالية التي يقوم فيها مستخدم بفتح مستند المحدد، يحاول وقت التشغيل إلى يثّبت الحل المكتب. ل المزيد من المعلومات حول خصائص مستند المخصصة، راجع نظرة عامة على خصائص المستند المخصصة.

معرّف فريد عالمي الذي قمت بتمرير solutionIDمعلمة المحددة في التطبيق بيان الحل الذي يتم إرفاق إلى مستند. فيجب تمرير نفس المعرف الفريد العمومي الذي هو المحدد في solutionIdالسمة من vstov4:documentالعنصر في ملف بيان تطبيق. للمزيد من المعلومات، راجع نشر ملفات البيان في حلول Office والتطبيقات و<document>العنصر (Office تطوير).

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

إذا لم يحتو مستند المحدد على عنصر تحكم أن يتوقع cusإلىmization مستند إلى يكون AddCustomizationالأسلوب وسينجح، وسيفشل تجميع إلى تحميل عندما يفتح مستخدم التطبيق.

fileTypeيجب أن تحدد معلمة مستند يحتوي على ملحق اسم ملف معتمد للتخصيصات المستوى المستندات ل الكلمة Microsoft المكتب و Microsoft المكتب Excel. لا يمكنك يرفق تخصيص لمستند يتم حفظه في مستند الكلمة XML (* xml) أو مستند الكلمة 2003 XML (* xml) ملف التنسيقات. لمزيد من المعلومات حول أنواع الملفات المدعمة، راجع هندسة تخصيصات مستوى المستند.

أمثلة

يلي تعليمات برمجية يستخدم المثال AddCustomizationالطريقة لإرفاق تخصيص إلى مستند المحدد.

يتطلب هذا المثال:

  • مشروع تطبيقات وحدة تحكم أو بعض المشاريع بخلاف المكتب الأخرى.

  • مراجع إلى تجميعات التالية:

    • Microsoft.VisualStudio.أدوات.Applications.ServerDocument.dll و Microsoft.VisualStudio.أدوات.Applications.وقت التشغيل.dll (إذا كان مشروع تستهدف .NET Framework 4).

      أو

    • Microsoft.VisualStudio.أدوات.Applications.ServerDocument.v10.0.dll و Microsoft.VisualStudio.أدوات.Applications.وقت التشغيل.v9.0.dll (إذا كان مشروع تستهدف 3.5 إطار عمل.NET).

Private Sub AddCustomizationUsingAssemblyPath(ByVal documentPath As String, _
    ByVal assemblyName As String, ByVal solutionID As Guid, ByVal deployManifestPath As String)
    Dim runtimeVersion As Integer = 0

    Try
        ' Make sure that this document does not yet have any Visual Studio Tools 
        ' for Office customizations.
        runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath)
        If runtimeVersion = 0 Then
            Dim deploymentManifestUri As New Uri(deployManifestPath)
            ServerDocument.AddCustomization(documentPath, assemblyName, solutionID, deploymentManifestUri)
            MessageBox.Show("The document was successfully customized.")
        Else
            System.Windows.Forms.MessageBox.Show("The document is already customized.")
        End If

    Catch ex As System.IO.FileNotFoundException
        System.Windows.Forms.MessageBox.Show("The specified document does not exist.")
    Catch ex As UnknownCustomizationFileException
        System.Windows.Forms.MessageBox.Show("The specified document has a file " & _
            "extension that is not supported by Visual Studio Tools for Office.")
    Catch ex As DocumentNotCustomizedException
        System.Windows.Forms.MessageBox.Show("The document could not be customized." & _
        vbLf & ex.Message)
    End Try
End Sub
private void AddCustomizationUsingAssemblyPath(string documentPath, string assemblyName, 
    Guid solutionID, string deployManifestPath)
{
    int runtimeVersion = 0;

    try
    {
        runtimeVersion = ServerDocument.GetCustomizationVersion(documentPath);

        // Make sure that this document does not yet have any Visual Studio Tools 
        // for Office customizations.
        if (runtimeVersion == 0)
        {
            Uri deploymentManifestUri = new Uri(deployManifestPath);
            ServerDocument.AddCustomization(documentPath, assemblyName, solutionID, deploymentManifestUri);
            MessageBox.Show("The document was successfully customized.");
        }
        else
        {
            System.Windows.Forms.MessageBox.Show("The document is already customized.");
        }
    }
    catch (System.IO.FileNotFoundException)
    {
        System.Windows.Forms.MessageBox.Show("The specified document does not exist.");
    }
    catch (UnknownCustomizationFileException)
    {
        System.Windows.Forms.MessageBox.Show("The specified document has a file " +
            "extension that is not supported by Visual Studio Tools for Office.");
    }
    catch (DocumentNotCustomizedException ex)
    {
        System.Windows.Forms.MessageBox.Show("The document could not be customized.\n" +
            ex.Message);
    }
}

أمن NET Framework.

راجع أيضًَا

المرجع

ServerDocument الفئة

ServerDocument الأعضاء

AddCustomization التحميل الزائد

Microsoft.VisualStudio.Tools.Applications مساحة الاسم

موارد أخرى

نشر ملفات البيان في حلول Office والتطبيقات

حلول Office النشر