Bagikan melalui


Arsitektur kustomisasi tingkat dokumen

Visual Studio 2013 menyertakan proyek untuk membuat kustomisasi tingkat dokumen untuk Microsoft Office Word dan Microsoft Office Excel. Topik ini menjelaskan aspek penyesuaian tingkat dokumen berikut:

Memahami kustomisasi

Saat Anda menggunakan alat pengembang Office di Visual Studio untuk membangun kustomisasi tingkat dokumen, Anda membuat rakitan kode terkelola yang terkait dengan dokumen tertentu. Dokumen atau buku kerja dengan rakitan tertaut dikatakan memiliki ekstensi kode terkelola. Untuk informasi selengkapnya, lihat Mendesain dan membuat solusi Office.

Saat pengguna membuka dokumen, rakitan dimuat oleh microsoft aplikasi Office lication. Setelah rakitan dimuat, penyesuaian dapat merespons peristiwa saat dokumen terbuka. Kustomisasi juga dapat memanggil model objek untuk mengotomatiskan dan memperluas aplikasi saat dokumen terbuka, dan dapat menggunakan salah satu kelas di .NET Framework.

Rakitan berkomunikasi dengan komponen COM aplikasi melalui perakitan interop utama aplikasi. Untuk informasi selengkapnya, lihat rakitan interop utama Office dan gambaran umum pengembangan solusi Office (VSTO).

Jika pengguna membuka beberapa kustomisasi tingkat dokumen secara bersamaan, setiap rakitan dimuat di domain aplikasi yang berbeda. Ini berarti bahwa satu solusi yang bertingkah tidak benar tidak dapat menyebabkan solusi lain gagal. Kustomisasi tingkat dokumen dirancang untuk bekerja dengan satu dokumen dalam satu domain aplikasi. Mereka tidak dirancang untuk komunikasi lintas dokumen. Untuk informasi selengkapnya tentang domain aplikasi, lihat Domain aplikasi.

Catatan

Kustomisasi tingkat dokumen yang Anda buat dengan menggunakan alat pengembang Office di Visual Studio dirancang untuk digunakan hanya saat aplikasi dimulai oleh pengguna akhir. Jika aplikasi dimulai secara terprogram, misalnya, dengan menggunakan Automation, penyesuaian mungkin tidak berfungsi seperti yang diharapkan.

Pengalaman waktu desain dan run-time

Untuk memahami arsitektur kustomisasi tingkat dokumen, ini membantu memahami pengalaman merancang solusi dan menjalankan solusi.

Waktu desain

Pengalaman waktu desain mencakup langkah-langkah berikut:

  1. Pengembang membuat proyek tingkat dokumen di Visual Studio. Proyek ini mencakup dokumen dan rakitan yang berjalan di belakang dokumen. Dokumen mungkin sudah ada (dibuat oleh perancang), atau dokumen baru dapat dibuat bersama dengan proyek.

  2. Perancang—baik pengembang yang membuat proyek atau orang lain—membuat tampilan akhir dan nuansa dokumen untuk pengguna akhir.

Runtime

Pengalaman run-time mencakup langkah-langkah berikut:

  1. Pengguna akhir membuka dokumen atau buku kerja yang memiliki ekstensi kode terkelola.

  2. Dokumen atau buku kerja memuat rakitan yang dikompilasi.

  3. Rakitan merespons peristiwa saat pengguna bekerja dalam dokumen atau buku kerja.

Perspektif pengembang dan pengguna akhir dibandingkan

Karena pengembang bekerja terutama di Visual Studio, dan pengguna akhir bekerja di Word atau Excel, ada dua cara untuk memahami kustomisasi tingkat dokumen.

Perspektif Pengembang Perspektif Pengguna Akhir
Menggunakan Visual Studio, pengembang menulis kode yang dapat diakses oleh Word dan Excel.

Meskipun mungkin tampak bahwa pengembang membuat file yang dapat dieksekusi yang menjalankan Word atau Excel, prosesnya benar-benar berfungsi sebaliknya. Dokumen dikaitkan dengan rakitan dan berisi penunjuk ke rakitan tersebut. Saat dokumen terbuka, Word atau Excel menemukan rakitan dan menjalankan kode sebagai respons terhadap semua peristiwa yang ditangani.
Mereka yang menggunakan solusi cukup membuka dokumen atau buku kerja (atau membuat dokumen baru dari templat) sama seperti mereka akan membuka file Microsoft Office lainnya.

Rakitan menyediakan kustomisasi dalam dokumen atau buku kerja seperti mengisinya secara otomatis dengan data saat ini, atau memperlihatkan kotak dialog untuk meminta informasi.

Format dokumen yang didukung untuk kustomisasi tingkat dokumen

Saat membuat proyek kustomisasi, Anda bisa memilih format dokumen yang ingin Anda gunakan dalam proyek. Untuk informasi selengkapnya, lihat Cara: Membuat proyek Office di Visual Studio.

Tabel berikut ini mencantumkan format dokumen yang bisa Anda gunakan dalam kustomisasi tingkat dokumen untuk Excel dan Word.

Excel Kata
Buku kerja Excel (.xlsx)

Buku kerja yang diaktifkan makro Excel (.xlsm)

Buku kerja biner Excel (.xlsb)

Buku kerja Excel 97-2003 (.xls)

Templat Excel (.xltx)

Templat yang diaktifkan makro Excel (.xltm)

Templat Excel 97-2003 (.xlt)
Dokumen Word (.docx)

Dokumen yang diaktifkan makro Word (.docm)

Dokumen Word 97-2003 (.doc)

Templat Word (.dotx)

Templat yang diaktifkan makro Word (.dotm)

Templat Word 97-2003 (.dot)

Anda harus merancang ekstensi kode terkelola hanya untuk dokumen dalam format yang didukung. Jika tidak, peristiwa tertentu mungkin tidak dimunculkan ketika dokumen terbuka dalam aplikasi. Misalnya, Open peristiwa tidak dimunculkan saat Anda menggunakan ekstensi kode terkelola dengan buku kerja yang disimpan dalam format lembar bentang XML Excel atau di halaman web (.htm; . html) format.

Dukungan untuk dokumen Word yang memiliki ekstensi nama file .xml

Templat proyek tingkat dokumen tidak memungkinkan Anda membuat proyek berdasarkan format file berikut:

  • Dokumen XML Word (*xml).

  • Dokumen XML Word 2003 (*xml).

    Jika Anda ingin pengguna akhir Anda menggunakan kustomisasi dalam format file ini, buat dan sebarkan kustomisasi yang menggunakan salah satu format file yang didukung yang ditentukan dalam tabel di atas. Setelah menginstal kustomisasi, pengguna akhir dapat menyimpan dokumen dalam format Dokumen XML Word (*xml) atau format Dokumen XML Word 2003 (*xml), dan kustomisasi akan terus berfungsi seperti yang diharapkan.

Komponen penyesuaian

Komponen utama penyesuaian adalah dokumen dan perakitan. Selain komponen-komponen ini, ada beberapa bagian lain yang memainkan peran penting dalam bagaimana Microsoft aplikasi Office likasi menemukan dan memuat kustomisasi.

Manifes penyebaran dan manifes aplikasi

Kustomisasi menggunakan manifes penyebaran dan manifes aplikasi untuk mengidentifikasi dan memuat versi rakitan kustomisasi terbaru. Manifes penyebaran menunjuk ke manifes aplikasi saat ini. Manifes aplikasi menunjuk ke rakitan kustomisasi, dan menentukan kelas titik masuk (atau kelas) untuk dijalankan di rakitan. Untuk informasi selengkapnya, lihat Manifes aplikasi dan penyebaran di solusi Office.

Alat Visual Studio untuk Office Runtime

Untuk menjalankan kustomisasi tingkat dokumen yang dibuat dengan menggunakan alat pengembang Office di Visual Studio, komputer pengguna akhir harus menginstal Alat Visual Studio untuk runtime Office. Runtime Visual Studio Tools for Office menyertakan komponen tidak terkelola yang memuat rakitan kustomisasi, dan juga sekumpulan rakitan terkelola. Rakitan terkelola ini menyediakan model objek yang digunakan kode kustomisasi Anda untuk mengotomatiskan dan memperluas aplikasi host.

Untuk informasi selengkapnya, lihat Gambaran umum alat Visual Studio untuk runtime Office.

Cara kerja kustomisasi dengan Microsoft aplikasi Office lications

Saat pengguna membuka dokumen yang merupakan bagian dari kustomisasi Microsoft Office, aplikasi menggunakan manifes penyebaran yang ditautkan ke dokumen untuk menemukan dan memuat versi terbaru dari rakitan kustomisasi. Lokasi manifes penyebaran disimpan dalam properti dokumen kustom bernama AssemblyLocation. String yang mengidentifikasi lokasi ini dimasukkan ke dalam properti saat Anda membangun solusi.

Manifes penyebaran menunjuk ke manifes aplikasi, yang kemudian menunjuk ke perakitan terbaru. Untuk informasi selengkapnya, lihat Manifes aplikasi dan penyebaran di solusi Office.

Ilustrasi berikut menunjukkan arsitektur dasar kustomisasi tingkat dokumen.

2007 Office customization architecture

Catatan

Di solusi Office yang menargetkan .NET Framework 4, solusi memanggil model objek aplikasi host dengan menggunakan informasi jenis primer interop assembly (PIA) yang disematkan dalam perakitan solusi, alih-alih memanggil ke PIA secara langsung. Untuk informasi selengkapnya, lihat Mendesain dan membuat solusi Office.

Proses pemuatan

Langkah-langkah berikut terjadi saat pengguna membuka dokumen yang merupakan bagian dari solusi Microsoft Office.

  1. Microsoft aplikasi Office lication memeriksa properti dokumen kustom untuk melihat apakah ada ekstensi kode terkelola yang terkait dengan dokumen. Untuk informasi selengkapnya, lihat Gambaran umum properti dokumen kustom.

  2. Jika ada ekstensi kode terkelola, aplikasi memuat VSTOEE.dll, yang memuat VSTOLoader.dll. Ini adalah DLL tidak terkelola yang merupakan komponen pemuat untuk runtime Visual Studio 2010 Tools for Office. Untuk informasi selengkapnya, lihat Gambaran umum runtime Visual Studio Tools for Office.

  3. VSTOLoader.dll memuat .NET Framework dan memulai bagian terkelola dari Visual Studio Tools untuk runtime Office .

  4. Jika dokumen dibuka dari lokasi selain komputer lokal, runtime Visual Studio Tools for Office memverifikasi bahwa lokasi dokumen berada di daftar Lokasi Tepercaya di Pusat Kepercayaan Pengaturan untuk aplikasi Office likasi tertentu. Jika lokasi dokumen tidak berada di lokasi tepercaya, penyesuaian tidak tepercaya, dan proses beban berhenti di sini.

  5. Runtime Visual Studio Tools for Office menginstal solusi jika belum diinstal, mengunduh manifes aplikasi dan penyebaran terbaru, dan melakukan serangkaian pemeriksaan keamanan. Untuk informasi selengkapnya, lihat Mengamankan solusi Office.

  6. Jika kustomisasi dipercaya untuk dijalankan, runtime Visual Studio Tools for Office menggunakan manifes penyebaran dan manifes aplikasi untuk memeriksa pembaruan perakitan. Jika versi baru rakitan tersedia, runtime mengunduh versi baru assembly ke cache ClickOnce di komputer klien. Untuk informasi selengkapnya, lihat Menyebarkan solusi Office.

  7. Runtime Visual Studio Tools for Office membuat domain aplikasi baru untuk memuat rakitan kustomisasi.

  8. Runtime Visual Studio Tools for Office memuat rakitan kustomisasi ke dalam domain aplikasi.

  9. Runtime Visual Studio Tools for Office memanggil penanganan aktivitas Startup di rakitan kustomisasi Anda. Untuk informasi selengkapnya, lihat Peristiwa di proyek Office.