Bagikan melalui


Metode IPin::QueryInternalConnections (strmif.h)

[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Tangkapan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine dan Audio/Video Capture di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]

Metode QueryInternalConnections mengambil pin yang tersambung secara internal ke pin ini (dalam filter).

Sintaks

HRESULT QueryInternalConnections(
  [out]     IPin  **apPin,
  [in, out] ULONG *nPin
);

Parameter

[out] apPin

Alamat array penunjuk IPin . Penelepon mengalokasikan array. Metode mengisi array dengan pointer IPin . Jika nPin adalah nol, parameter ini bisa null.

[in, out] nPin

Pada input, menentukan ukuran array. Pada output, menentukan jumlah pin yang terhubung secara internal.

Mengembalikan nilai

Mengembalikan nilai HRESULT . Nilai yang mungkin termasuk yang berikut ini.

Menampilkan kode Deskripsi
S_FALSE
Ukuran array tidak cukup.
S_OK
Berhasil.
E_NOTIMPL
Tidak diterapkan.

Keterangan

Metode ini mengembalikan informasi tentang pemetaan internal filter pin input ke pin output. Dengan kata lain, ini menjelaskan bagaimana pin input mengirimkan data ke pin output.

Di sebagian besar filter, setiap pin input terhubung ke setiap pin output. Misalnya, dalam filter transformasi, satu input terhubung ke satu output; dalam filter pemisah, satu input terhubung ke beberapa output. Dalam kasus ini, metode hanya harus mengembalikan E_NOTIMPL.

Jika tidak, metode mengembalikan array pointer IPin , satu untuk setiap pin yang dipetakan secara internal ke pin yang telah Anda kueri. Jika Anda memanggil metode pada pin input, array berisi pointer ke pin output, dan sebaliknya.

Penelepon mengalokasikan array pointer IPin . Untuk mendapatkan ukuran array yang diperlukan, panggil metode sekali dengan apPin sama dengan NULL. Ukuran dikembalikan dalam parameter nPin . Kemudian alokasikan array dan panggil metode lagi, atur apPin sama dengan alamat array dan nPin sama dengan ukuran array. Metode kemudian mengisi array dengan pointer IPin . Setiap penunjuk yang dikembalikan memiliki jumlah referensi yang luar biasa dan harus dirilis oleh pemanggil.

Metode ini memiliki penggunaan lain yang sekarang tidak digunakan lagi: Filter Graph Manager memperlakukan filter sebagai filter perender jika setidaknya satu pin input mengimplementasikan metode ini tetapi mengembalikan nol dalam nPin. Namun, jika Anda menulis filter perender baru, Anda harus mengimplementasikan antarmuka IAMFilterMiscFlags alih-alih menggunakan metode ini untuk menunjukkan bahwa filter adalah perender.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header strmif.h (termasuk Dshow.h)
Pustaka Strmiids.lib

Lihat juga

Kode Kesalahan dan Keberhasilan

Antarmuka IPin