Bagikan melalui


Installutil.exe (Alat penginstal)

Alat Penginstal adalah utilitas baris perintah yang memungkinkan Anda untuk menginstal dan menghapus sumber daya server dengan menjalankan komponen penginstal di rakitan yang ditentukan. Alat ini bekerja bersama dengan kelas di namespace System.Configuration.Install.

Alat ini otomatis terpasang dengan Visual Studio. Untuk menjalankan alat, gunakan Prompt Perintah Pengembang Visual Studio atau PowerShell Pengembang Visual Studio.

Pada perintah, masukkan berikut ini:

Sintaks

installutil [/u[ninstall]] [options] assembly [[options] assembly] ...

Parameter

Argumen Deskripsi
assembly Nama file rakitan tempat menjalankan komponen penginstal. Abaikan parameter ini jika Anda ingin menentukan nama kuat rakitan dengan menggunakan opsi /AssemblyName.

Opsi

Opsi Deskripsi
/h[elp]

-atau-

/?
Menampilkan sintaks perintah dan opsi untuk alat ini.
/helpmajelis

-atau-

/?majelis
Menampilkan opsi tambahan yang dikenali oleh masing-masing penginstal dalam rakitan yang ditentukan, bersama dengan sintaks perintah dan opsi untuk InstallUtil.exe. Opsi ini menambahkan teks yang dikembalikan oleh properti Installer.HelpText setiap komponen penginstal ke teks bantuan InstallUtil.exe. Misalnya, jika ServiceProcessInstaller.Account adalah User, opsi /username dan /password tersedia.
/AssemblyName "assemblyName

,Version=major.minor.build.revision

,Culture=locale

,PublicKeyToken=publicKeyToken"
Menentukan nama kuat rakitan, yang harus didaftarkan di cache rakitan global. Nama rakitan harus sepenuhnya memenuhi syarat dengan versi, budaya, dan token kunci publik rakitan. Nama yang sepenuhnya memenuhi syarat harus diapit oleh tanda kutip.

Misalnya, "myAssembly, Culture=neutral, PublicKeyToken=0038abc9deabfle5, Version=4.0.0.0" adalah nama rakitan yang sepenuhnya memenuhi syarat.
/InstallStateDir=[directoryName ] Menentukan direktori file .InstallState yang berisi data yang digunakan untuk menghapus instalasi perakitan. Defaultnya adalah direktori yang berisi rakitan.
/LogFile=[filename] Menentukan nama file log tempat kemajuan instalasi dicatat. Secara default, jika opsi /LogFile dihilangkan, file log bernama assemblyname.InstallLog dibuat. Jika filename dihilangkan, tidak ada file log yang dibuat.
/LogToConsole={true|false} Jika true, menampilkan keluaran ke konsol. Jika false (default), menekan keluaran ke konsol.
/ShowCallStack Mengeluarkan tumpukan panggilan ke file log jika pengecualian terjadi pada titik mana pun selama penginstalan.
/u[ninstall] Hapus instalan rakitan yang ditentukan. Tidak seperti opsi lainnya, /u berlaku untuk semua rakitan terlepas dari tempat opsi muncul di baris perintah.

Opsi penginstal tambahan

Penginstal individu yang digunakan dalam rakitan dapat mengenali opsi selain yang tercantum di bagian Opsi. Untuk mempelajari tentang opsi ini, jalankan InstallUtil.exe dengan jalur rakitan pada baris perintah bersama dengan opsi /? atau /help. Untuk menentukan opsi ini, Anda menyertakannya di baris perintah bersama dengan opsi yang dikenali oleh InstallUtil.exe.

Catatan

Teks bantuan pada opsi yang didukung oleh masing-masing komponen penginstal dikembalikan oleh properti Installer.HelpText. Opsi individual yang telah dimasukkan pada baris perintah dapat diakses secara terprogram dari properti Installer.Context.

Semua opsi dan parameter baris perintah ditulis ke file log penginstalan. Namun, jika Anda menggunakan /Password parameter , yang dikenali oleh beberapa komponen penginstal, informasi kata sandi digantikan oleh delapan tanda bintang (*) dan tidak akan muncul di file log.

Penting

Dalam beberapa kasus, parameter yang diteruskan ke penginstal mungkin menyertakan informasi sensitif atau identitas pribadi, yang, secara default, ditulis ke file log teks biasa. Untuk mencegah perilaku ini, Anda dapat menekan file log dengan menentukan /LogFile= (tanpa argumen nama file) pada baris perintah.

Keterangan

Aplikasi .NET Framework terdiri dari file program tradisional dan sumber daya terkait, seperti antrean pesan, log peristiwa, dan penghitung kinerja, yang harus dibuat saat aplikasi disebarkan. Anda dapat menggunakan komponen penginstal rakitan untuk membuat sumber daya ini saat aplikasi Anda diinstal dan untuk menghapusnya saat aplikasi Anda dihapus instalasinya. Installutil.exe mendeteksi dan menjalankan komponen penginstal ini.

Anda dapat menentukan beberapa rakitan pada baris perintah yang sama. Opsi apa pun yang muncul sebelum nama rakitan berlaku untuk penginstalan rakitan tersebut. Kecuali untuk /u dan /AssemblyName, opsi bersifat kumulatif tetapi dapat diganti. Artinya, opsi yang ditentukan untuk satu rakitan berlaku untuk semua rakitan berikutnya kecuali opsi ditentukan dengan nilai baru.

Jika Anda menjalankan Installutil.exe terhadap rakitan tanpa menentukan opsi apa pun, itu menempatkan tiga file berikut ke dalam direktori rakitan:

  • InstallUtil.InstallLog - Berisi gambaran umum tentang kemajuan instalasi.
  • assemblyname. InstallLog - Berisi informasi khusus untuk fase penerapan proses penginstalan. Untuk informasi selengkapnya tentang fase penerapan, lihat metode Commit.
  • assemblyname. InstallState - Berisi data yang digunakan untuk menghapus instalasi rakitan.

Installutil.exe menggunakan refleksi untuk memeriksa rakitan yang ditentukan dan untuk menemukan semua jenis Installer yang memiliki atribut System.ComponentModel.RunInstallerAttribute diatur ke true. Alat tersebut kemudian menjalankan metode Installer.Install atau Installer.Uninstall pada setiap instans dari jenis Installer. Installutil.exe melakukan instalasi secara transaksional; yaitu, jika salah satu rakitan gagal diinstal, Installutil.exe akan memutar kembali penginstalan semua rakitan lainnya. Hapus instalan tidak transaksional.

Installutil.exe tidak dapat menginstal atau menghapus rakitan yang ditandatangani dengan penundaan, tetapi dapat memasang atau menghapus rakitan bernama kuat.

Versi 32-bit dari runtime bahasa umum (CLR) hanya dikirim dengan alat Penginstal versi 32-bit, tetapi versi 64-bit dari CLR dikirim dengan versi 32-bit dan 64-bit dari alat Alat Penginstal. Saat menggunakan CLR 64-bit, gunakan alat Penginstal 32-bit untuk menginstal rakitan 32-bit, dan alat Alat Penginstal 64-bit untuk menginstal rakitan bahasa perantara (CIL) 64-bit dan umum. Kedua versi alat Penginstal berperilaku sama.

Anda tidak dapat menggunakan Installutil.exe untuk menyebarkan layanan Windows yang dibuat dengan menggunakan C++, karena Installutil.exe tidak mengenali kode asli yang disematkan yang diproduksi oleh pengkompilasi C++. Jika Anda mencoba menerapkan layanan C++ Windows dengan Installutil.exe, pengecualian seperti BadImageFormatException akan ditampilkan. Untuk bekerja dengan skenario ini, pindahkan kode layanan ke modul C++, lalu tulis objek penginstal di C# atau Visual Basic.

Contoh

Perintah berikut menampilkan deskripsi sintaks perintah dan opsi untuk InstallUtil.exe.

installutil /?

Perintah berikut menampilkan deskripsi sintaks perintah dan opsi untuk InstallUtil.exe. Ini juga menampilkan deskripsi dan daftar opsi yang didukung oleh komponen penginstal di myAssembly.exe jika teks bantuan telah ditetapkan ke properti Installer.HelpText penginstal.

installutil /? myAssembly.exe

Perintah berikut menjalankan komponen penginstal di rakitan myAssembly.exe.

installutil myAssembly.exe

Perintah berikut menjalankan komponen penginstal dalam rakitan dengan menggunakan tombol pengalih /AssemblyName dan nama yang sepenuhnya memenuhi syarat.

installutil /AssemblyName "myAssembly, Culture=neutral, PublicKeyToken=0038abc9deabfle5, Version=4.0.0.0"

Perintah berikut menjalankan komponen penginstal dalam rakitan yang ditentukan oleh nama file dan dalam rakitan yang ditentukan oleh nama kuat. Perhatikan bahwa semua rakitan yang ditentukan oleh nama file harus mendahului rakitan yang ditentukan oleh nama kuat di baris perintah, karena opsi /AssemblyName tidak dapat diganti.

installutil myAssembly.exe /AssemblyName "myAssembly, Culture=neutral, PublicKeyToken=0038abc9deabfle5, Version=4.0.0.0"

Perintah berikut menjalankan komponen penghapus instalan di rakitan myAssembly.exe.

installutil /u myAssembly.exe

Perintah berikut menjalankan komponen penghapus instalan di rakitan myAssembly1.exe dan myAssembly2.exe.

installutil myAssembly1.exe /u myAssembly2.exe

Karena posisi opsi /u pada baris perintah tidak penting, ini setara dengan perintah berikut.

installutil /u myAssembly1.exe myAssembly2.exe

Perintah berikut menjalankan alat penginstal di rakitan myAssembly.exe dan menetapkan bahwa informasi kemajuan akan ditulis ke myLog.InstallLog.

installutil /LogFile=myLog.InstallLog myAssembly.exe

Perintah berikut menjalankan alat penginstal di rakitan myAssembly.exe, menetapkan bahwa informasi kemajuan harus ditulis ke myLog.InstallLog, dan menggunakan opsi /reg khusus alat penginstal untuk menentukan bahwa pembaruan harus dilakukan pada registri sistem.

installutil /LogFile=myLog.InstallLog /reg=true myAssembly.exe

Perintah berikut menjalankan alat penginstal di rakitan myAssembly.exe, menggunakan opsi /email khusus alat penginstal untuk menentukan alamat email pengguna, dan menekan keluaran ke file log.

installutil /LogFile= /email=admin@mycompany.com myAssembly.exe

Perintah berikut menulis kemajuan penginstalan untuk myAssembly.exe hingga myLog.InstallLog dan menulis kemajuan untuk myTestAssembly.exe hingga myTestLog.InstallLog.

installutil /LogFile=myLog.InstallLog myAssembly.exe /LogFile=myTestLog.InstallLog myTestAssembly.exe

Lihat juga