ServiceModel Registration Tool (ServiceModelReg.exe)
Alat baris perintah ini menyediakan kemampuan untuk mengelola pendaftaran komponen WCF dan WF pada satu komputer. Dalam situasi normal, Anda tidak perlu menggunakan alat ini karena komponen WCF dan WF dikonfigurasi saat diinstal. Namun, jika Anda mengalami masalah terkait aktivasi layanan, Anda dapat mencoba mendaftarkan komponen menggunakan alat ini.
Sintaks
ServiceModelReg.exe[(-ia|-ua|-r)|((-i|-u) -c:<command>)] [-v|-q] [-nologo] [-?]
Keterangan
Alat ini dapat ditemukan di lokasi berikut:
%SystemRoot%\Microsoft.Net\Framework\v3.0\Windows Communication Foundation\
Catatan
Saat Alat Pendaftaran ServiceModel dijalankan di Windows Vista, dialog Fitur Windows mungkin tidak mencerminkan bahwa opsi Aktivasi HTTP Windows Communication Foundation di Microsoft .NET Framework 3.0 diaktifkan. Dialog Fitur Windows dapat diakses dengan mengklik Mulai, kemudian mengklik Jalankan lalu mengetik OptionalFeatures.
Tabel berikut menjelaskan opsi yang dapat digunakan dengan ServiceModelReg.exe.
Opsi | Deskripsi |
---|---|
-ia |
Menginstal semua komponen WCF dan WF. |
-ua |
Menghapus instalan semua komponen WCF dan WF. |
-r |
Memperbaiki semua komponen WCF dan WF. |
-i |
Menginstal komponen WCF dan WF yang ditentukan dengan –c. |
-u |
Menghapus instalan komponen WCF dan WF yang ditentukan dengan –c. |
-c |
Menginstal atau menghapus instalan komponen: - httpnamespace – Reservasi Namespace HTTP - tcpportsharing – Layanan berbagi port TCP - tcpactivation – Layanan aktivasi TCP (tidak didukung di Profil Klien .NET 4) - namedpipeactivation – Layanan aktivasi pipa yang dinamai (tidak didukung di Profil Klien .NET 4) - msmqactivation – Layanan aktivasi MSMQ (tidak didukung di Profil Klien .NET 4 - etw – Manifes pelacakan peristiwa ETW (Windows Vista atau yang lebih baru) |
-q |
Mode senyap (hanya menampilkan pengelogan kesalahan) |
-v |
Mode verbose. |
-nologo |
Menekan pesan hak cipta dan spanduk. |
-? |
Menampilkan teks bantuan |
Memperbaiki Kesalahan FileLoadException
Jika Anda menginstal versi WCF sebelumnya di komputer, Anda mungkin mendapatkan kesalahan FileLoadFoundException
saat menjalankan alat ServiceModelReg untuk mendaftarkan penginstalan baru. Ini dapat terjadi bahkan jika Anda telah menghapus file secara manual dari penginstalan sebelumnya, tetapi membiarkan pengaturan machine.config tetap utuh.
Pesan kesalahannya mirip dengan yang berikut ini.
Error: System.IO.FileLoadException: Could not load file or assembly 'System.ServiceModel, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
File name: 'System.ServiceModel, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
Anda harus mencatat dari pesan kesalahan bahwa assembly System.ServiceModel Versi 2.0.0.0 diinstal pada rilis Customer Technology Preview (CTP) awal. Versi saat ini dari assembly System.ServiceModel yang dirilis adalah 3.0.0.0. Oleh karena itu, masalah ini ditemui ketika Anda ingin menginstal rilis WCF resmi di komputer tempat rilis CTP awal WCF diinstal, tetapi tidak sepenuhnya dihapus instalannya.
ServiceModelReg.exe tidak dapat membersihkan entri versi sebelumnya, juga tidak dapat mendaftarkan entri versi baru. Satu-satunya solusi adalah mengedit secara manual machine.config. Anda dapat menemukan file ini di lokasi berikut.
%windir%\Microsoft.NET\Framework\v2.0.50727\config\machine.config
Jika Anda menjalankan WCF pada mesin 64-bit, Anda juga harus mengedit file yang sama di lokasi ini.
%windir%\Microsoft.NET\Framework64\v2.0.50727\config\machine.config
Temukan node XML apa pun pada file yang merujuk ke "System.ServiceModel, Version=2.0.0.0", hapus node tersebut dan semua node turunan. Simpan file dan jalankan kembali ServiceModelReg.exe akan mengatasi masalah ini.
Contoh
Contoh berikut menunjukkan cara menggunakan opsi paling umum dari alat ServiceModelReg.exe.
ServiceModelReg.exe -ia
Installs all components
ServiceModelReg.exe -i -c:httpnamespace -c:etw
Installs HTTP namespace reservation and ETW manifests
ServiceModelReg.exe -u -c:etw
Uninstalls ETW manifests
ServiceModelReg.exe -r
Repairs an extended install