Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Můžete napsat zásuvný modul obslužné rutiny rozhraní, který poskytuje programový přístup v uživatelském režimu k sadě vlastností specifických pro ovladač, kterou vystavuje minidriver KS. Nejprve zaregistrujte objekt, jak je popsáno v registraci modulů plug-in proxy serveru KS.
Vaše třída modulu plug-in rozhraní může být odvozena z CUnknown:
class CMyPluginInterface : public CUnknown
{
public:
// creation method
static CUnknown* CALLBACK CreateInstance( LPUNKNOWN piOuterUnknown, HRESULT* phResult );
private:
CMyPluginInterface( IKsPropertySet* piKsPropertySet );
IKsPropertySet* m_piKsPropertySet;
};
Plug-in rozhraní je rozhraní COM poskytované dodavatelem, které se při vytváření agreguje s proxy KS poskytovanou MS.
Konkrétně Metoda CreateInstance modulu plug-in obdrží ukazatel na proxy KS jako vnější neznámý.
Tento externí objekt můžete poté dotazovat pro ukazatel do rozhraní IKsPropertySet poskytnutého společností MS:
hResult = piOuterUnknown->QueryInterface(
__uuidof( piKsPropertySet ),
&piKsPropertySet );
Pak z CreateInstance vyvoláte konstruktor rozhraní k vytvoření instance objektu obslužné rutiny rozhraní.
Zadejte ukazatel na IKsPropertySet jako parametr v vyvolání konstruktoru. Konstruktor pak zachová ukazatel na iKsPropertySet jako členskou proměnnou m_piKsPropertySet v předchozí deklaraci.
Nyní můžete implementovat metody Get a Set ve třídě, které volají IKsPropertySet::Get a IKsPropertySet::Set a tím manipulují s vlastnostmi, které jsou vystaveny ovladačem.
Případně můžete zadat dotaz na vnější neznámý ukazatel na jeho rozhraní IKsObject . Zavolejte poté IKsObject::KsGetObjectHandle, abyste získali popisovač souboru. Nyní pracujete s vlastnostmi zařízení voláním KsSynchronousIoControlDevice s tímto popisovačem souboru.