Pemecahan Masalah WMI
Saat mengakses data lokal atau jarak jauh WMI dalam aplikasi atau skrip, Anda mungkin mengalami kesalahan mulai dari kelas yang hilang hingga akses ditolak. Penyedia juga memiliki opsi penelusuran kesalahan dan kelas pemecahan masalah yang tersedia.
Catatan
Dokumentasi berikut ditargetkan untuk pengembang dan administrator TI. Jika Anda adalah pengguna akhir yang mengalami pesan kesalahan mengenai WMI, Anda harus membuka Dukungan Microsoft dan mencari kode kesalahan yang Anda lihat pada pesan kesalahan. Untuk informasi selengkapnya tentang pemecahan masalah dengan skrip WMI dan layanan WMI, lihat WMI Tidak Berfungsi!
Utilitas Diagnosis WMI
Utilitas diagnosis WMI (WMIDiag.exe) tidak lagi didukung dimulai dengan Windows 8 dan Windows Server 2012.
**Windows 7, Windows Server 2008 R2, Windows Vista dan Windows Server 2008: **
Jika WMI mengembalikan pesan kesalahan, ketahuilah bahwa mereka mungkin tidak menunjukkan masalah dalam layanan WMI atau di penyedia WMI. Kegagalan dapat berasal dari bagian lain dari sistem operasi dan muncul sebagai kesalahan melalui WMI. Dalam keadaan apa pun, jangan hapus repositori WMI sebagai tindakan pertama karena menghapus repositori dapat menyebabkan kerusakan pada sistem atau aplikasi yang diinstal.
Untuk mendapatkan informasi selengkapnya tentang sumber masalah, Anda dapat mengunduh dan menjalankan alat baris perintah diagnostik Utilitas Diagnosis WMI . Alat ini menghasilkan laporan yang biasanya dapat mengisolasi sumber masalah dan memberikan instruksi tentang cara memperbaikinya. Laporan ini juga membantu layanan dukungan Microsoft dalam membantu Anda. Anda dapat mengunduh Utilitas Diagnosis WMI di Pusat Unduhan.
Penulis penyedia mungkin juga mengalami masalah penelusuran kesalahan kecuali Anda menulis penyedia yang diputuskan. Untuk informasi selengkapnya, lihat Penyedia Debugging.
Pengelogan dan Pelacakan
File log WMI tidak ada lagi; digantikan oleh Pelacakan Peristiwa untuk Windows (ETW). Untuk informasi selengkapnya, lihat Melacak Aktivitas WMI, Aktivitas WMI Pengelogan, dan File Log WMI.
Pemecahan masalah dalam Skrip dan Aplikasi
WMI berisi sekumpulan kelas untuk memecahkan masalah aplikasi klien yang menggunakan penyedia WMI. Untuk informasi selengkapnya, lihat Pemecahan Masalah Aplikasi Klien WMI.
Bagaimana Penulis Penyedia Dapat Mencegah Masalah WMI
Penulis penyedia dapat mencegah banyak masalah, yang muncul dalam pesan kesalahan melalui WMI, dengan melakukan tindakan berikut:
- Mendaftarkan penyedia Anda dengan benar. Untuk informasi selengkapnya, lihat Mendaftarkan Penyedia.
- Menambahkan pernyataan #pragma pemulihan otomatis ke file Managed Object Format (MOF) yang menentukan kelas penyedia Anda.
Untuk informasi selengkapnya, lihat Penyedia Debugging, Menyediakan Data ke WMI, dan Konfigurasi Penyedia dan Kelas Pemecahan Masalah.
Akses Ditolak
Kesalahan Akses Ditolak yang dilaporkan oleh skrip dan aplikasi yang mengakses namespace layanan dan data WMI umumnya termasuk dalam tiga kategori. Tabel berikut mencantumkan tiga kategori kesalahan bersama dengan masalah yang dapat menyebabkan kesalahan dan kemungkinan solusi.
| Kesalahan | Kemungkinan Masalah | Solusi |
|---|---|---|
0x800706BA HRESULT_FROM_WIN32(RPC_S_SERVER_UNAVAILABLE)Masalah firewall atau server tidak tersedia. |
Komputer benar-benar tidak ada atau Windows Firewall memblokir koneksi |
Menyambungkan ke Vista: netsh advfirewall firewall set rule group="windows management instrumentation (wmi)" new enable=yes Connecting to downlevel: Allow the "Remote Administration" rule in Windows Firewall. |
| E_ACCESS_DENIED 0x80070005 Akses ditolak oleh keamanan DCOM. |
Pengguna tidak memiliki akses jarak jauh ke komputer melalui DCOM. Biasanya, kesalahan DCOM terjadi saat menyambungkan ke komputer jarak jauh dengan versi sistem operasi yang berbeda. |
Berikan izin Peluncuran Jarak Jauh dan Aktivasi Jarak Jauh kepada pengguna di dcomcnfg. Klik kanan Komputer Saya-> Properti. Di bawah Keamanan COM, klik "Edit Batas" untuk kedua bagian. Berikan pengguna yang Anda inginkan akses jarak jauh, peluncuran jarak jauh, dan aktivasi jarak jauh. Kemudian buka Konfigurasi DCOM, temukan "Windows Management Instrumentation", dan berikan pengguna yang Anda inginkan untuk Peluncuran Jarak Jauh dan Aktivasi Jarak Jauh. Untuk informasi selengkapnya, lihat Menyambungkan Antara Sistem Operasi yang Berbeda |
| WBEM_E_ACCESS_DENIED 0x80041003 Akses ditolak oleh penyedia |
Pengguna tidak memiliki izin untuk melakukan operasi di WMI. Ini bisa terjadi ketika Anda meminta kelas tertentu sebagai pengguna hak rendah, tetapi paling sering terjadi ketika Anda mencoba memanggil metode atau mengubah instans WMI sebagai pengguna hak rendah. Namespace layanan yang Anda sambungkan dienkripsi, dan pengguna mencoba menyambungkan dengan koneksi yang tidak terenkripsi |
Beri pengguna akses dengan Kontrol WMI (pastikan mereka telah Remote_Access diatur ke true) Koneksi menggunakan klien yang mendukung enkripsi. |
Biasanya, kesalahan DCOM terjadi saat menyambungkan ke komputer jarak jauh dengan versi sistem operasi yang berbeda.
Penyedia juga dapat menolak akses ke data di namespace tertentu atau mungkin memerlukan tingkat keamanan koneksi tertentu. Untuk informasi selengkapnya, lihat Mengatur Keamanan Proses Aplikasi Klien dan Hosting dan Keamanan Penyedia.
Kesalahan akses ditolak dari perubahan Internet Connection Firewall (ICF).
Untuk informasi selengkapnya, lihat Menyambungkan Melalui firewall Windows.
Kesalahan akses ditolak dikembalikan oleh keamanan DCOM ketika klien berintegritas rendah mencoba mengakses WMI. Misalnya, kontrol ActiveX yang berjalan di Internet Explorer, yang memiliki tingkat keamanan yang diatur ke rendah, tidak memiliki akses untuk melakukan operasi WMI lokal.
Windows 7: Pengguna berintegritas rendah memiliki izin baca-saja untuk operasi WMI lokal.
Informasi tentang Kesalahan
Ketika Anda mendapatkan pesan kesalahan dari WMI, Anda dapat menemukan pesan di Konstanta Kesalahan WMI atau, untuk pembuatan skrip, WbemErrorEnum. Namun, informasi yang diberikan oleh kesalahan saja biasanya tidak cukup untuk menentukan apa yang terjadi. Kerusakan repositori WMI dapat menyanggah sebagai kelas atau instans "tidak ditemukan".
Untuk informasi selengkapnya tentang kesalahan WMI:
- Log WMI melacak peristiwa dari dalam inti WMI dan dari penyedia. Untuk informasi selengkapnya, lihat Aktivitas WMI Pengelogan.
- Gunakan Kelas Pemecahan Masalah WMI untuk memeriksa status internal WMI atau menerima pemberitahuan tentang penyedia atau peristiwa layanan WMI. Untuk informasi selengkapnya, lihat Kelas Konfigurasi dan Pemecahan Masalah Penyedia serta Pemecahan Masalah Aplikasi Klien WMI.