Pemecahan masalah aplikasi WSDAPI lainnya

Aplikasi dapat langsung memanggil antarmuka dan fungsi WSDAPI untuk melakukan penemuan perangkat dan pertukaran metadata. Pola pesan yang digunakan oleh aplikasi ini bervariasi.

Tujuan dari panduan pemecahan masalah ini adalah untuk membantu pengembang aplikasi WSDAPI berhasil menerapkan proksi perangkat. Panduan ini tidak dimaksudkan untuk membantu memecahkan masalah semua aspek WSDAPI. Jika proksi perangkat telah berhasil dibuat dan klien dan host dapat saling melihat di jaringan, maka panduan ini tidak dapat mengatasi masalah aplikasi. Untuk memecahkan masalah aplikasi ini, ikuti instruksi dalam Mengaktifkan Pelacakan WSDAPI dan hubungi dukungan Microsoft untuk bantuan lebih lanjut.

Pemecahan masalah klien yang memanggil WSDCreateDeviceProxy

Aplikasi memanggil WSDCreateDeviceProxy untuk membuat dan menginisialisasi instans antarmuka IWSDDeviceProxy . Objek proksi perangkat ini dapat digunakan untuk mengiklankan layanan pada perangkat dan juga untuk bertukar metadata.

Aplikasi yang memanggil WSDCreateDeviceProxy selalu menggunakan pesan berikut.

Aplikasi yang memanggil WSDCreateDeviceProxy terkadang menggunakan pesan berikut.

Pesan Resolve dan ResolveMatches dihasilkan saat alamat perangkat logis (yaitu, alamat perangkat formulir urn:uuid:{guid}) diteruskan ke pszDeviceId. Pesan-pesan ini tidak dihasilkan ketika alamat perangkat fisik diteruskan ke pszDeviceId. Saat pesan Resolve dan ResolveMatches digunakan, pesan tersebut dikirim sebelum pesan Get dan GetResponse .

Prosedur diagnostik berikut harus digunakan (dalam rangka) untuk membantu mengidentifikasi masalah dengan aplikasi yang memanggil WSDCreateDeviceProxy dengan alamat perangkat fisik.

  1. Periksa pengaturan adapter dan firewall.
  2. Gunakan host generik dan klien untuk pertukaran metadata HTTP.
  3. Gunakan pengelogan WinHTTP untuk memverifikasi Dapatkan lalu lintas.
  4. Periksa jejak jaringan untuk pertukaran metadata HTTP.

Prosedur diagnostik berikut harus digunakan (dalam rangka) untuk membantu mengidentifikasi masalah dengan aplikasi yang memanggil WSDCreateDeviceProxy dengan alamat perangkat logis.

  1. Periksa pengaturan adapter dan firewall.
  2. Gunakan host generik dan klien untuk UDP WS-Discovery.
  3. Gunakan Klien Debug WSD untuk memverifikasi lalu lintas multicast.
  4. Periksa jejak jaringan untuk UDP WS-Discovery.
  5. Gunakan host generik dan klien untuk pertukaran metadata HTTP.
  6. Gunakan pengelogan WinHTTP untuk memverifikasi Dapatkan lalu lintas.
  7. Periksa jejak jaringan untuk pertukaran metadata HTTP.

Verifikasi bahwa pesan Resolve dan ResolveMatches dihasilkan dan memenuhi persyaratan lalu lintas. Tidak perlu mencari pesan Probe atau ProbeMatches di output Klien Debug WSD atau di jejak jaringan.

Pemecahan masalah klien yang memanggil WSDCreateDeviceProxyAdvanced

Aplikasi memanggil WSDCreateDeviceProxyAdvanced untuk membuat dan menginisialisasi instans antarmuka IWSDDeviceProxy . Tidak seperti WSDCreateDeviceProxy, WSDCreateDeviceProxyAdvanced memiliki parameter pDeviceAddress yang digunakan untuk menentukan alamat transportasi perangkat. Jika alamat transportasi ini ditentukan, maka resolusi alamat logis tidak diperlukan dan pesan Resolve dan ResolveMatches tidak dihasilkan.

Jika pDeviceAddress diatur ke NULL dan pszDeviceId adalah alamat logis, maka resolusi alamat diperlukan dan pesan Resolve dan ResolveMatches dihasilkan.

Prosedur diagnostik berikut harus digunakan (dalam rangka) untuk membantu mengidentifikasi masalah dengan aplikasi yang memanggil WSDCreateDeviceProxyAdvanced dengan parameter pDeviceAddressnon-NULL. Prosedur ini juga dapat digunakan ketika pDeviceAddress adalah NULL dan pszDeviceId adalah alamat fisik.

  1. Periksa pengaturan adapter dan firewall.
  2. Gunakan host generik dan klien untuk pertukaran metadata HTTP.
  3. Gunakan pengelogan WinHTTP untuk memverifikasi Dapatkan lalu lintas.
  4. Periksa jejak jaringan untuk pertukaran metadata HTTP.

Prosedur diagnostik berikut harus digunakan (dalam rangka) untuk membantu mengidentifikasi masalah dengan aplikasi yang memanggil WSDCreateDeviceProxyAdvanced dengan pDeviceAddress diatur ke NULL dan dengan pszDeviceId diatur ke alamat logis.

  1. Periksa pengaturan adapter dan firewall.
  2. Gunakan host generik dan klien untuk UDP WS-Discovery.
  3. Gunakan Klien Debug WSD untuk memverifikasi lalu lintas multicast.
  4. Periksa jejak jaringan untuk UDP WS-Discovery.
  5. Gunakan host generik dan klien untuk pertukaran metadata HTTP.
  6. Gunakan pengelogan WinHTTP untuk memverifikasi Dapatkan lalu lintas.
  7. Periksa jejak jaringan untuk pertukaran metadata HTTP.

Verifikasi bahwa pesan Resolve dan ResolveMatches dihasilkan dan memenuhi persyaratan lalu lintas. Tidak perlu mencari pesan Probe atau ProbeMatches di output Klien Debug WSD atau di jejak jaringan.

Pemecahan masalah klien menggunakan antarmuka IWSDiscoveryProvider

Aplikasi yang memanggil antarmuka IWSDiscoveryProvider tidak melakukan pertukaran metadata. Antarmuka ini hanya digunakan untuk penemuan. Pola pesan dan prosedur pemecahan masalah berbeda untuk setiap metode yang dipanggil pada antarmuka IWSDiscoveryProvider .

Saat aplikasi memanggil IWSDiscoveryProvider::SearchByType, pesan Probe dibuat. Pesan Probe dikirim oleh multicast UDP ke port 3702. Pesan ProbeMatches dihasilkan sebagai respons. Pesan ProbeMatches dikirim oleh unicast UDP dan berasal dari port 3702.

Saat aplikasi memanggil IWSDiscoveryProvider::SearchById, pesan Resolve dibuat. Pesan Resolve dikirim oleh multicast UDP ke port 3702. Pesan ResolveMatches dihasilkan sebagai respons. ResolveMatches dikirim oleh unicast UDP dan berasal dari port 3702.

Prosedur diagnostik berikut harus digunakan (secara berurutan) untuk membantu mengidentifikasi masalah dengan aplikasi yang memanggil IWSDiscoveryProvider::SearchByType atau IWSDiscoveryProvider::SearchById. Verifikasi bahwa pesan yang dihasilkan oleh API yang disebut memenuhi persyaratan lalu lintas.

  1. Periksa pengaturan adapter dan firewall.
  2. Gunakan host generik dan klien untuk UDP WS-Discovery.
  3. Gunakan Klien Debug WSD untuk memverifikasi lalu lintas multicast.
  4. Periksa jejak jaringan untuk UDP WS-Discovery.

Jika aplikasi memanggil IWSDiscoveryProvider::SearchByAddress, maka itu adalah aplikasi penemuan yang diarahkan. Untuk informasi pemecahan masalah selengkapnya, lihat Pemecahan Masalah Aplikasi Menggunakan Penemuan Terarah.

Mulai Menggunakan Pemecahan Masalah WSDAPI