Método IWDFIoRequest2::GetRequestorMode (wudfddi.h)
[Aviso: UMDF 2 é a versão mais recente do UMDF e substitui o UMDF 1. Todos os novos drivers UMDF devem ser gravados usando UMDF 2. Nenhum recurso novo está sendo adicionado ao UMDF 1 e há suporte limitado para UMDF 1 em versões mais recentes do Windows 10. Os drivers universais do Windows devem usar o UMDF 2. Para obter mais informações, consulte Introdução aoda UMDF .]
O método GetRequestorMode indica se uma solicitação de E/S veio de um driver no modo kernel ou de um componente do modo de usuário (um aplicativo ou um driver de modo de usuário).
Sintaxe
WDF_KPROCESSOR_MODE GetRequestorMode();
Valor de retorno
GetRequestorMode retorna um valor tipo WDF_KPROCESSOR_MODEque indica se a solicitação de E/S atual veio de um driver no modo kernel ou de um componente do modo de usuário.
Observações
Um driver baseado em UMDF pode receber uma solicitação de E/S de um driver no modo kernel somente se o driver baseado em UMDF der suporte clientes no modo kernel.
Se GetRequestorMode retornar WdfUserMode, o driver poderá chamar IWDFIoRequest2::IsFromUserModeDriver para determinar se a solicitação de E/S veio de um aplicativo ou de um driver de modo de usuário.
Exemplos
O exemplo de código a seguir mostra como uma função de retorno de chamada IQueueCallbackWrite::OnWrite pode determinar se uma solicitação de E/S é do modo kernel ou do modo de usuário. Se a solicitação for do modo de usuário, o exemplo determinará se a solicitação é de um aplicativo ou de outro driver de modo de usuário.
VOID
STDMETHODCALLTYPE
CMyQueue::OnWrite(
__in IWDFIoQueue *pWdfQueue,
__in IWDFIoRequest *pWdfRequest,
__in SIZE_T BytesToWrite
)
{
WDF_KPROCESSOR_MODE processorMode;
BOOL fromApp = FALSE;
//
// Declare an IWDFIoRequest2 interface pointer and obtain the
// IWDFIoRequest2 interface from the IWDFIoRequest interface.
//
CComQIPtr<IWDFIoRequest2> r2 = pWdfRequest;
processorMode = r2->GetRequestorMode();
if (processorMode == WdfUserMode)
{
fromApp = r2->IsFromUserModeDriver();
}
...
}
Requisitos
Requisito | Valor |
---|---|
fim do suporte | Indisponível no UMDF 2.0 e posterior. |
da Plataforma de Destino | Área de trabalho |
versão mínima do UMDF | 1.9 |
cabeçalho | wudfddi.h (inclua Wudfddi.h) |
de DLL | WUDFx.dll |