Función IoRemoveShareAccess (wdm.h)
La rutina IoRemoveShareAccess quita la información de acceso y acceso compartido para una instancia abierta determinada de un objeto de archivo.
Sintaxis
void IoRemoveShareAccess(
[in] PFILE_OBJECT FileObject,
[in, out] PSHARE_ACCESS ShareAccess
);
Parámetros
[in] FileObject
Puntero al objeto de archivo, que normalmente está cerrado por el subproceso actual.
[in, out] ShareAccess
Puntero a la estructura de acceso a recursos compartidos que describe cómo se está accediendo actualmente al objeto de archivo abierto.
Valor devuelto
Ninguno
Observaciones
Esta rutina es recíproca a ioUpdateShareAccess.
ioRemoveShareAccess no es una operación atómica. Por lo tanto, los controladores que llaman a esta rutina deben proteger el objeto de archivo compartido pasado a IoRemoveShareAccess mediante algún tipo de bloqueo, como una exclusión mutua o un bloqueo de recursos, con el fin de evitar daños en los recuentos de acceso compartido.
Los autores de llamadas de ioRemoveShareAccess deben ejecutarse en IRQL = PASSIVE_LEVEL y en el contexto del subproceso que solicitó que se cerrara el FileObject de.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Disponible a partir de Windows 2000. |
de la plataforma de destino de | Universal |
encabezado de | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
biblioteca de | NtosKrnl.lib |
DLL de | NtosKrnl.exe |
irQL | PASSIVE_LEVEL (consulte la sección Comentarios) |
reglas de cumplimiento de DDI | HwStorPortProhibitedDIs(storport), IrqlIoPassive5(wdm), PowerIrpDDis(wdm) |