Compartir a través de


Método IWDFRemoteTarget::Reopen (wudfddi.h)

[Advertencia: UMDF 2 es la versión más reciente de UMDF y sustituye a UMDF 1. Todos los controladores UMDF nuevos deben escribirse con UMDF 2. No se agregan nuevas características a UMDF 1 y hay compatibilidad limitada con UMDF 1 en versiones más recientes de Windows 10. Los controladores universales de Windows deben usar UMDF 2. Para obtener más información, consulta Introducción con UMDF.

El método Reopen vuelve a abrir un destino de E/S remoto después de que se haya cerrado temporalmente.

Sintaxis

HRESULT Reopen();

Valor devuelto

Volver a abrir devuelve S_OK si la operación se realiza correctamente. De lo contrario, el método podría devolver el siguiente valor:

Código devuelto Descripción
E_OUTOFMEMORY
Error en el intento del marco de trabajo de asignar memoria.
 

Este método puede devolver uno de los otros valores que contiene Winerror.h.

El comprobador del marco notifica un error si el marco no puede abrir el archivo.

Comentarios

Normalmente, un controlador llama a Reopen desde la función de devolución de llamada IRemoteTargetCallbackRemoval::OnRemoteTargetRemoveCanceled , pero se puede llamar a Reopen en su lugar después de que OnRemoteTargetRemoveCanceled devuelva.

Volver a abrir usa el nombre de archivo o interfaz que el controlador especificó anteriormente en IWDFRemoteTarget::OpenFileByName o IWDFRemoteTarget::OpenRemoteInterface. Si desea cambiar el archivo o la interfaz que usa el controlador, el controlador puede llamar a IWDFRemoteTarget::Close y, a continuación, puede llamar a OpenFileByName o OpenRemoteInterface en lugar de Volver a abrir.

Para obtener más información sobre la reapertura y cómo usar destinos de E/S remotos en controladores basados en UMDF, vea Controlar el estado de un destino de E/S general en UMDF.

Ejemplos

En el ejemplo de código siguiente se muestra una función de devolución de llamada IRemoteTargetCallbackRemoval::OnRemoteTargetRemoveCanceled que llama a Reopen.

VOID 
STDMETHODCALLTYPE
CMyRemoteTarget::OnRemoteTargetRemoveCanceled(
    __in IWDFRemoteTarget* FxTarget
    )
{
 if (S_OK == (FxTarget->Reopen()))
    {
    //
    // Resume sending I/O requests to the remote target.
    //
    ...
    }
 else
    {
       FxTarget->Close();
    }
}

Requisitos

Requisito Value
Finalización del soporte técnico No disponible en UMDF 2.0 y versiones posteriores.
Plataforma de destino Escritorio
Versión mínima de UMDF 1,9
Encabezado wudfddi.h (incluya Wudfddi.h)
Archivo DLL WUDFx.dll

Consulte también

IWDFRemoteTarget

IWDFRemoteTarget::Close