Aracılığıyla paylaş


Nasıl Yapılır: Belgelere Yönetilen Kod Uzantıları Ekleme

Varolan Microsoft Office Word belgesine veya Microsoft Office Excel çalışma kitabına özelleştirme derlemesi iliştirebilirsiniz.Belge veya çalışma kitabı Microsoft Office projeleri ve Visual Studio geliştirme araçları tarafından desteklenen herhangi bir dosya biçiminde olabilir.Daha fazla bilgi için bkz. Belge Düzeyi Özelleştirmeler Mimarisi.

Uygulama hedefi: Bu konudaki bilgiler, şu uygulamalar için belge düzeyi projelere yöneliktir. Excel 2013 ve Excel 2010; Word 2013 ve Word 2010. Daha fazla bilgi edinmek için, bkz. Office Uygulaması ve Proje Türüne Göre Kullanılabilir Özellikler.

Word'e veya Excel'e özelleştirme iliştirmek için, ServerDocument sınıfının AddCustomization yöntemini kullanın.ServerDocument sınıfı, Microsoft Office yüklü olmayan bilgisayarda çalıştırılmak üzere tasarlandığı için, bu yöntemi Microsoft Office geliştirmesiyle (konsol veya Windows Forms uygulaması gibi) doğrudan ilgili olmayan çözümlerde kullanabilirsiniz.

[!NOT]

Eğer kod, belirlenen belgenin sahip olmadığı denetimleri beklerse, özelleştirme yüklemede başarısız olur.

video bağlantısı İlgili video gösterimi için bkz: nasıl yapmak ı: İliştirme veya Word belgesinden vsto derlemesini Ayır?.

Yönetilen kod uzantılarını belgelere eklemek

  1. Microsoft Office gibi bir konsol uygulaması gerektirmeyen bir proje veya Windows Forms projesi Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll ve Microsoft.VisualStudio.Tools.Applications.Runtime.dll derlemelere başvuru ekleyin.

  2. Kod dosyanın en üstüne aşağıdaki Imports veya using deyimlerini ekleyin.

    Imports Microsoft.VisualStudio.Tools.Applications
    Imports Microsoft.VisualStudio.Tools.Applications.Runtime
    
    using Microsoft.VisualStudio.Tools.Applications;
    using Microsoft.VisualStudio.Tools.Applications.Runtime;
    
  3. Statik AddCustomization yöntemini çağırın.

    Asağıdaki kod örneğinde AddCustomization fazla yüklemesi kullanılır.Bu fazla yükleme belgenin tam yolunu ve belgeye iliştirmek istediğiniz özelleştirme için dağıtım bildiriminin konumunu belirleyen Uri'yi alır.Bu örnekte WordDocument1.docx isimli Word belgesinin masaüstünde olduğu ve dağıtım bildiriminin masaüstündeki Yayımla isimli klasörde bulunduğu varsayılır.

    Dim documentPath As String = System.Environment.GetFolderPath( _
         Environment.SpecialFolder.Desktop) + "\WordDocument1.docx" 
    Dim runtimeVersion As Integer = 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 Then 
            Dim deployManifestPath As String = System.Environment.GetFolderPath( _
                Environment.SpecialFolder.Desktop) & "\Publish\WordDocument1.vsto" 
            Dim deploymentManifestUri As New Uri(deployManifestPath)
            ServerDocument.AddCustomization(documentPath, deploymentManifestUri)
            System.Windows.Forms.MessageBox.Show("The document was successfully customized.")
        Else
            System.Windows.Forms.MessageBox.Show("The document is already customized.")
        End If 
    Catch ex As FileNotFoundException
        System.Windows.Forms.MessageBox.Show("The specified document does not exist.")
    Catch ex As DocumentNotCustomizedException
        System.Windows.Forms.MessageBox.Show("The document could not be customized." & _
            vbLf & ex.Message)
    End Try
    
    string documentPath = System.Environment.GetFolderPath(
        Environment.SpecialFolder.Desktop) + @"\WordDocument1.docx";
    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)
        {
            string deployManifestPath = System.Environment.GetFolderPath(
                Environment.SpecialFolder.Desktop) + @"\Publish\WordDocument1.vsto";
    
            Uri deploymentManifestUri = new Uri(deployManifestPath);
            ServerDocument.AddCustomization(documentPath, deploymentManifestUri);
            System.Windows.Forms.MessageBox.Show("The document was successfully customized.");
        }
        else
        {
            System.Windows.Forms.MessageBox.Show("The document is already customized.");
        }
    }
    catch (FileNotFoundException)
    {
        System.Windows.Forms.MessageBox.Show("The specified document does not exist.");
    }
    catch (DocumentNotCustomizedException ex)
    {
        System.Windows.Forms.MessageBox.Show("The document could not be customized.\n" +
            ex.Message);
    }
    
  4. Projeyi derleyin ve özelleştirme iliştirmek istediğiniz bilgisayarda uygulamayı çalıştırın.Bilgisayarda Office Runtime için Visual Studio 2010 Araçları olmalıdır.

Ayrıca bkz.

Görevler

Nasıl Yapılır: Belgelerden Yönetilen Kod Uzantılarını Kaldırma

Kavramlar

ServerDocument Sınıfını Kullanarak Sunucuda Belge Yönetme

Office Çözümlerinde Uygulama ve Dağıtım Bildirimleri