Metode IWMDMDevice3::GetProperty (mswmdm.h)
Metode GetProperty mengambil properti metadata perangkat tertentu.
Sintaks
HRESULT GetProperty(
[in] LPCWSTR pwszPropName,
[out] PROPVARIANT *pValue
);
Parameter
[in] pwszPropName
Karakter lebar, nama string properti yang dihentikan null untuk diambil. Daftar konstanta nama properti standar diberikan dalam Konstanta Metadata.
[out] pValue
Nilai yang dikembalikan untuk properti . Aplikasi harus membebaskan memori ini menggunakan PropVariantClear.
Nilai kembali
Metode mengembalikan HRESULT. Semua metode antarmuka di Windows Media Device Manager dapat mengembalikan salah satu kelas kode kesalahan berikut:
- Kode kesalahan COM standar
- Kode kesalahan Windows dikonversi ke nilai HRESULT
- Kode kesalahan Pengelola Perangkat Windows Media
Keterangan
Untuk mendapatkan daftar properti perangkat yang didukung, klien memanggil fungsi ini dan menentukan g_wszWMDMSupportedDeviceProperties. Untuk daftar nama properti perangkat standar, lihat Konstanta Metadata.
Klien harus meneruskan pointer ke PROPVARIANT kosong dalam parameter pValue . Saat dikembalikan, pValue akan berisi nilai properti .
Metode ini mirip dengan metode GetMetadata dan GetSpecifiedMetadata untuk penyimpanan, tetapi metode ini hanya bisa mendapatkan satu properti pada satu waktu.
Contoh
Kueri kode C++ berikut untuk properti g_wszWMDMFormatsSupported, yang mengembalikan daftar format SAFEARRAY yang didukung oleh perangkat.
// Query a device for supported configurations for each media or format type.
HRESULT GetCaps(IWMDMDevice3* pDevice)
{
HRESULT hr = S_OK;
// Request the "formats supported" property to get a list of supported formats.
PROPVARIANT pvFormatsSupported;
PropVariantInit(&pvFormatsSupported);
hr = pDevice->GetProperty(g_wszWMDMFormatsSupported, &pvFormatsSupported);
HANDLE_HR(hr, "Got a property list in GetCaps", "Couldn't get a property list in GetCaps.");
// Loop through the retrieved format list.
// For each format, get a list of format configurations.
SAFEARRAY* formatList = pvFormatsSupported.parray;
WMDM_FORMATCODE formatCode = WMDM_FORMATCODE_NOTUSED;
for(LONG iCap = 0; iCap < formatList->rgsabound[0].cElements; iCap++)
{
// Get a format from the SAFEARRAY of retrieved formats.
SafeArrayGetElement(formatList, &iCap, &formatCode);
// Call a custom function to see the specifics of device support for
// each format.
if (formatCode != WMDM_FORMATCODE_NOTUSED)
myGetFormatCaps(formatCode, pDevice);
}
e_Exit:
// Clear out the memory we used.
PropVariantClear(&pvFormatsSupported);
return hr;
}
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Windows |
Header | mswmdm.h |
Pustaka | Mssachlp.lib |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk