Bagikan melalui


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