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.
İ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
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.
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;
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); }
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