Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Panduan ini menunjukkan cara membuat ekstensi dengan perintah menu yang meluncurkan Notepad.
Membuat perintah menu
Buat proyek VSIX bernama FirstMenuCommand. Anda dapat menemukan templat proyek VSIX di dialog Proyek Baru dengan mencari "vsix".
Saat proyek terbuka, tambahkan templat item perintah kustom bernama FirstCommand. Di Solution Explorer, klik kanan node proyek dan pilih Tambah>Item Baru. Dalam dialog Tambahkan Item Baru, buka Item C#>Ekstensibilitas dan pilih Command. Di bidang Nama di bagian bawah jendela, ubah nama file perintah menjadi FirstCommand.cs.
Buat proyek dan mulai debug.
Instans eksperimental Visual Studio muncul. Untuk informasi selengkapnya tentang instans eksperimental, lihat Instans eksperimental.
Dalam instans eksperimental, buka jendela Kelola Ekstensi Ekstensi>. Anda akan melihat ekstensi FirstMenuCommand di sini. (Jika Anda membuka Mengelola Ekstensi dalam instans kerja Visual Studio, Anda tidak akan melihat FirstMenuCommand).
Sekarang buka menu Alat di instans eksperimental. Anda akan melihat perintah Invoke FirstCommand. Pada titik ini, perintah memunculkan kotak pesan yang mengatakan FirstCommand Inside FirstMenuCommand.FirstCommand.MenuItemCallback(). Kita akan melihat cara benar-benar memulai Notepad dari perintah ini di bagian berikutnya.
Mengubah pengendali perintah menu
Sekarang mari kita perbarui handler perintah untuk memulai Notepad.
Hentikan debugging dan kembali ke instance kerja Visual Studio Anda. Buka file FirstCommand.cs dan tambahkan pernyataan penggunaan berikut:
using System.Diagnostics;Temukan konstruktor FirstCommand privat. Di sinilah perintah dikaitkan ke layanan perintah dan handler perintah ditentukan. Ubah nama handler perintah menjadi StartNotepad, sebagai berikut:
private FirstCommand(AsyncPackage package, OleMenuCommandService commandService) { this.package = package ?? throw new ArgumentNullException(nameof(package)); commandService = commandService ?? throw new ArgumentNullException(nameof(commandService)); CommandID menuCommandID = new CommandID(CommandSet, CommandId); // Change to StartNotepad handler. MenuCommand menuItem = new MenuCommand(this.StartNotepad, menuCommandID); commandService.AddCommand(menuItem); }Hapus metode
Executedan tambahkan metodeStartNotepad, yang hanya akan memulai Notepad:private void StartNotepad(object sender, EventArgs e) { ThreadHelper.ThrowIfNotOnUIThread(); Process proc = new Process(); proc.StartInfo.FileName = "notepad.exe"; proc.Start(); }Sekarang cobalah. Saat Anda mulai men-debug proyek dan mengklik Alat >Panggil FirstCommand, Anda akan melihat instans Notepad muncul.
Anda dapat menggunakan instans kelas Process untuk menjalankan executable apa pun, bukan hanya Notepad. Cobalah dengan
calc.exe, misalnya.
Membersihkan lingkungan eksperimental
Jika Anda mengembangkan beberapa ekstensi, atau hanya menjelajahi hasil dengan versi kode ekstensi yang berbeda, lingkungan eksperimental Anda mungkin berhenti bekerja seperti yang seharusnya. Dalam hal ini, Anda harus menjalankan skrip reset. Ini diberi nama Reset Instans Eksperimental Visual Studio, dan disertakan sebagai bagian dari Visual Studio SDK. Skrip ini menghapus semua referensi ke ekstensi Anda dari lingkungan eksperimental, sehingga Anda dapat memulai dari awal.
Anda bisa mendapatkan skrip ini dengan salah satu dari dua cara:
Di desktop, temukan Reset Visual Studio Instans Eksperimental.
Dari baris perintah, jalankan perintah CreateExpInstance.exe . Ini terletak di folder penginstalan Visual Studio di bawah VSSDK\Common\Tools\Bin. Anda dapat membuat jalur lengkap dan mengapit jalur lengkap dalam tanda kutip untuk memanggilnya. Misalnya, jika Visual Studio diinstal ke C:\Program Files\Microsoft Visual Studio\2022\Community, maka perintahnya adalah:
"C:\Program Files\Microsoft Visual Studio\2022\Community\CreateExpInstance.exe" /Reset /VSInstance=<version> /RootSuffix=Exp && PAUSE
Di desktop, temukan Reset Visual Studio Instans Eksperimental.
Dari baris perintah, jalankan perintah CreateExpInstance.exe . Ini terletak di folder penginstalan Visual Studio di bawah VSSDK\Common\Tools\Bin. Anda dapat membuat jalur lengkap dan mengapit jalur lengkap dalam tanda kutip untuk memanggilnya. Misalnya, jika Visual Studio diinstal ke C:\Program Files\Microsoft Visual Studio\18\Community, maka perintahnya adalah:
"C:\Program Files\Microsoft Visual Studio\18\Community\CreateExpInstance.exe" /Reset /VSInstance=<version> /RootSuffix=Exp && PAUSE
Menyebarkan ekstensi Anda
Sekarang setelah Anda memiliki ekstensi alat yang berjalan seperti yang Anda inginkan, saatnya untuk mempertimbangkan untuk berbagi dengan teman dan kolega Anda. Itu mudah, selama visual Studio 2015 terinstal. Yang harus Anda lakukan adalah mengirimi mereka file .vsix yang Anda buat. (Pastikan untuk membangunnya dalam mode Release.)
Anda dapat menemukan file .vsix untuk ekstensi ini di direktori bin FirstMenuCommand. Secara khusus, dengan asumsi Anda telah membangun konfigurasi Rilis, konfigurasi tersebut akan berada di:
<direktori kode>\FirstMenuCommand\FirstMenuCommand\bin\Release\FirstMenuCommand.vsix
Untuk menginstal ekstensi, teman Anda perlu menutup semua instans Visual Studio yang terbuka, lalu klik dua kali file .vsix, yang memunculkan VSIX Installer. File disalin ke direktori %LocalAppData%\Microsoft\VisualStudio<versi>\Extensions.
Saat teman Anda memunculkan Visual Studio lagi, mereka akan menemukan ekstensi FirstMenuCommand di Alat>Ekstensi dan Pembaruan. Mereka dapat masuk ke ekstensi dan Pembaruan untuk menghapus instalasi atau menonaktifkan ekstensi juga.
Langkah berikutnya
Panduan ini telah menunjukkan kepada Anda hanya sebagian kecil dari apa yang dapat Anda lakukan dengan ekstensi Visual Studio. Berikut adalah daftar singkat hal lain (cukup mudah) yang dapat Anda lakukan dengan ekstensi Visual Studio:
Anda dapat melakukan lebih banyak hal dengan perintah menu sederhana:
Tambahkan ikon Anda sendiri: Tambahkan ikon ke perintah menu
Mengubah teks perintah menu: Mengubah teks perintah menu
Menambahkan pintasan menu ke perintah: Mengikat pintasan keyboard ke item menu
Menambahkan berbagai jenis perintah, menu, dan toolbar: Perluas menu dan perintah
Tambahkan jendela alat dan perluas jendela alat Visual Studio bawaan: Perluas dan Sesuaikan jendela alat
Tambahkan IntelliSense, saran kode, dan fitur lain ke editor kode yang ada: Perluas editor dan layanan bahasa
Tambahkan halaman Opsi dan Properti serta pengaturan pengguna ke ekstensi Anda: Perluas properti dan jendela Properti dan Perluas pengaturan dan opsi pengguna
Jenis ekstensi lain memerlukan sedikit lebih banyak pekerjaan, seperti membuat jenis proyek baru (Memperluas proyek), atau membuat jenis editor baru (Membuat editor dan desainer kustom).