ServiceInstaller.Install(IDictionary) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menginstal layanan dengan menulis informasi aplikasi layanan ke registri. Metode ini dimaksudkan untuk digunakan oleh alat penginstalan, yang memproses metode yang sesuai secara otomatis.
public:
override void Install(System::Collections::IDictionary ^ stateSaver);
public override void Install(System.Collections.IDictionary stateSaver);
override this.Install : System.Collections.IDictionary -> unit
Public Overrides Sub Install (stateSaver As IDictionary)
Parameter
- stateSaver
- IDictionary
Yang IDictionary berisi informasi konteks yang terkait dengan penginstalan.
Pengecualian
Penginstalan tidak berisi ServiceProcessInstaller untuk executable.
-atau-
Nama file untuk rakitan adalah null atau string kosong.
-atau-
Nama layanan tidak valid.
-atau-
Manajer Kontrol Layanan tidak dapat dibuka.
Panjang nama tampilan untuk layanan lebih dari 255 karakter.
Sistem tidak dapat menghasilkan handel ke layanan.
-atau-
Layanan dengan nama tersebut sudah diinstal.
Keterangan
Biasanya, Anda tidak akan memanggil metode di dalam kode Anda; metode umumnya hanya dipanggil ServiceInstaller oleh utilitas penginstalan. Utilitas penginstalan secara otomatis memanggil Install metode selama penginstalan. Ini mendukung kegagalan, jika perlu, dengan memanggil Rollback objek yang menghasilkan pengecualian.
Rutinitas penginstalan aplikasi mempertahankan informasi secara otomatis tentang komponen yang sudah diinstal, menggunakan alat penginstal Installer.Contextproyek . Informasi status ini, diteruskan sebagai InstallstateSaver parameter, terus diperbarui karena ServiceProcessInstaller instans dan setiap ServiceInstaller instans diinstal oleh utilitas. Biasanya tidak perlu bagi kode Anda untuk memodifikasi informasi status ini secara eksplisit.
Yang ServiceProcessInstaller terkait dengan kelas penginstalan proyek Anda menginstal informasi yang umum untuk semua ServiceInstaller instans dalam proyek. Jika layanan ini memiliki apa pun yang memisahkannya dari layanan lain dalam proyek penginstalan, informasi khusus layanan tersebut diinstal oleh metode ini.
Untuk menginstal layanan, buat kelas penginstal proyek yang mewarisi dari Installer kelas , dan atur RunInstallerAttribute atribut pada kelas ke true. Dalam proyek Anda, buat satu ServiceProcessInstaller instans per aplikasi layanan, dan satu ServiceInstaller instans untuk setiap layanan dalam aplikasi. Dalam konstruktor kelas penginstal proyek Anda, atur properti penginstalan untuk layanan menggunakan ServiceProcessInstaller instans dan ServiceInstaller , dan tambahkan instans ke Installers koleksi.
Note
Disarankan agar Anda menggunakan konstruktor untuk menambahkan instans penginstal; namun, jika Anda perlu menambahkan ke Installers koleksi dalam Install metode , pastikan untuk melakukan penambahan yang sama ke koleksi dalam Uninstall metode .
Untuk semua kelas yang berasal dari Installer kelas , status Installers koleksi harus sama dalam Install metode dan Uninstall . Namun, Anda dapat menghindari pemeliharaan koleksi di seluruh Install metode dan Uninstall jika Anda menambahkan instans penginstal ke Installers koleksi di konstruktor kelas penginstal kustom Anda.