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.
Pokud chcete spustit pozastavený modul filtru, NDIS volá funkci FilterSetModuleOptions ovladače filtru, pokud existuje, a potom volání funkce FilterRestart . Modul filtru zadá stav Restarting při spuštění ve funkci FilterRestart .
Pokud ovladač poskytl vstupní bod pro FilterSetModuleOptions, může ovladač změnit částečnou charakteristiku modulu filtru. Další informace naleznete v tématu režim obejití dat.
Když volá funkci FilterRestart ovladače filtru, NDIS předá ukazatel na strukturu typu NDIS_RESTART_ATTRIBUTES ovladači filtru v členu RestartAttributes struktury NDIS_FILTER_RESTART_PARAMETERS. Ovladače filtru mohou upravit atributy restartování určené podkladovými ovladači. Další informace o úpravě atributů restartování naleznete v tématu FilterRestart.
Poznámka NDIS volá FilterSetModuleOptions pro všechny moduly filtru v zásobníku před voláním funkce FilterRestart pro všechny moduly filtru v zásobníku.
NDIS spustí modul filtru jako součást operace Plug and Play pro restartování zásobníku ovladačů. Přehled restartování zásobníku ovladačů najdete v tématu Restartování zásobníku ovladačů.
Jménem modulu filtru, který je ve stavu Restartování, řidič filtru:
Dokončí všechny operace potřebné k restartování normálních operací odesílání a příjmu.
Další informace o operacích odesílání a přijímání naleznete v tématu Modul operací odesílání a přijímání filtru.
Může číst nebo zapisovat konfigurovatelné parametry pro modul filtru.
Může přijímat indikace síťových dat. Ovladač může tato data zkopírovat a zařadit do fronty a později oznámit vyšším ovladačům, nebo může tato data zahodit.
Neměli byste zahájit žádné nové přijímací indikace.
Měly by odmítnout všechny nové požadavky odeslané do funkce FilterSendNetBufferLists okamžitě voláním funkce NdisFSendNetBufferListsComplete . Je třeba v každé NET_BUFFER_LIST nastavit úplný stav na NDIS_STATUS_PAUSED.
Může poskytovat indikace stavu pomocí funkce NdisFIndicateStatus.
Další informace o indikátorech stavu najdete v tématu indikace stavu modulu filtru.
Měly by zpracovávat požadavky OID ve funkci FilterOidRequest.
Další informace o požadavcích OID naleznete v tématu Modul filtru: požadavky OID.
Neměli byste inicializovat žádné nové žádosti o odeslání.
Měl by okamžitě vrátit nové přijímací indikace NDIS voláním funkce NdisFReturnNetBufferLists. V případě potřeby může ovladač před jejich vrácením zkopírovat takové indikace příjmu.
Může provádět požadavky OID na podkladové ovladače pro nastavení nebo dotazování aktualizovaných konfiguračních informací.
Měla by zpracovávat indikátory stavu ve své funkci FilterStatus.
Měla by indikovat NDIS_STATUS_SUCCESS nebo stav selhání. Pokud se modul filtru nerestartuje, NDIS ho odpoje a pokud se jedná o povinný filtr, NDIS ukončí celý zásobník ovladačů.
Jakmile ovladač filtru úspěšně restartuje operace odesílání a příjmu, musí dokončit operaci restartování. Ovladač filtru může operaci restartování dokončit synchronně nebo asynchronně vrácením NDIS_STATUS_SUCCESS nebo NDIS_STATUS_PENDING z FilterRestartu.
Pokud ovladač vrátí NDIS_STATUS_PENDING, musí po dokončení operace restartování volat funkci NdisFRestartComplete . V tomto případě ovladač předá konečný stav operace restartování do NdisFRestartComplete.
Po dokončení operace restartování je modul filtru ve stavu Spuštěno . Ovladač obnoví normální zpracování odesílání a příjmu.
NDIS neinicializuje jiné operace Plug and Play, jako je připojení, odpojení nebo pozastavení, zatímco ovladač filtru je ve stavu Restartování. NDIS může iniciovat žádosti o pozastavení, jakmile je ovladač filtru ve stavu Spuštěno . Další informace o pozastavení modulu filtru najdete v tématu Pozastavení modulu filtru.