Yönetilen kod uzantılarını belgelerden kaldırma

Microsoft Office Word veya Microsoft Office Excel için belge düzeyinde özelleştirmenin parçası olan bir belgeden veya çalışma kitabından özelleştirme derlemesini program aracılığıyla kaldırabilirsiniz. Kullanıcılar daha sonra belgeleri açabilir ve içeriği görüntüleyebilir, ancak belgelere eklediğiniz özel kullanıcı arabirimi (UI) görünmez ve kodunuz çalışmaz.

Şunlar için geçerlidir: Bu konudaki bilgiler Excel ve Word için belge düzeyi projeleri için geçerlidir. Daha fazla bilgi için bkz. Office uygulaması ve proje türüne göre kullanılabilen özellikler.

Office çalışma zamanı için Visual Studio Araçları tarafından sağlanan yöntemlerden birini RemoveCustomization kullanarak özelleştirme derlemesini kaldırabilirsiniz. Hangi yöntemi kullanacağınız, çalışma zamanında özelleştirmeyi kaldırmak isteyip istemediğinize (başka bir deyişle, Word belgesi veya Excel çalışma kitabı açıkken özelleştirmede kod çalıştırarak) veya kapalı bir belgeden veya Microsoft Office yüklü olmayan bir sunucuda bulunan bir belgeden özelleştirmeyi kaldırmak isteyip istemediğinize bağlıdır.

Çalışma zamanında özelleştirme derlemesini kaldırmak için

  1. Özelleştirme kodunuzda yöntemini (Word için) veya yöntemini (Excel için) çağırın RemoveCustomizationRemoveCustomization . Bu yöntem yalnızca özelleştirme artık gerekli olmadığında çağrılmalıdır.

    Kodunuzda bu yöntemi çağırdığınız yer, özelleştirmenizin nasıl kullanıldığına bağlıdır. Örneğin, müşteriler belgeyi yalnızca belgenin kendisine (özelleştirmeye değil) ihtiyaç duyan diğer istemcilere göndermeye hazır olana kadar özelleştirmenizin özelliklerini kullanırsa, müşteri tıkladığında çağıran RemoveCustomization bazı kullanıcı arabirimi sağlayabilirsiniz. Alternatif olarak, özelleştirmeniz belgeyi ilk açıldığında verilerle doldurursa, ancak özelleştirme müşteriler tarafından doğrudan erişilen başka bir özellik sağlamazsa, özelleştirmeniz belgeyi başlatmayı tamamladığında RemoveCustomization'ı çağırabilirsiniz.

Kapalı bir belgeden veya sunucudaki bir belgeden özelleştirme derlemesini kaldırmak için

  1. Konsol uygulaması veya Windows Forms projesi gibi Microsoft Office gerektirmeyen bir projede, Microsoft.VisualStudio.Tools.Applications.ServerDocument.dll derlemesine bir başvuru ekleyin.

  2. Aşağıdaki imports veya using deyimini kod dosyanızın en üstüne ekleyin.

    using Microsoft.VisualStudio.Tools.Applications;
    
  3. sınıfının statik RemoveCustomization yöntemini ServerDocument çağırın ve parametresi için çözüm belge yolunu belirtin.

    Aşağıdaki kod örneğinde, özelleştirmeyi masaüstündeki WordDocument1.docx adlı bir belgeden kaldırdığınız varsayılır.

    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. Projeyi derleyin ve özelleştirmeyi kaldırmak istediğiniz bilgisayarda uygulamayı çalıştırın. Bilgisayarda Office için Visual Studio 2010 Araçları çalışma zamanı yüklü olmalıdır.