CBFS Filter 2020 Python Edition

Questions / Feedback?

on_after_set_file_attributes Event

Fires after a file or directory's attributes and/or times are changed.

Syntax

class CBFilterAfterSetFileAttributesEventParams(object):
  @property
  def file_name() -> str: ...
  @property
  def creation_time() -> datetime.datetime: ...
  @property
  def last_access_time() -> datetime.datetime: ...
  @property
  def last_write_time() -> datetime.datetime: ...
  @property
  def change_time() -> datetime.datetime: ...
  @property
  def attributes() -> int: ...
  @property
  def status() -> int: ...
  @status.setter
  def status(value) -> None: ...
  @property
  def file_context() -> int: ...
  @file_context.setter
  def file_context(value) -> None: ...
  @property
  def handle_context() -> int: ...
  @handle_context.setter
  def handle_context(value) -> None: ...
  @property
  def result_code() -> int: ...
  @result_code.setter
  def result_code(value) -> None: ...

# In class CBFilter:
@property
def on_after_set_file_attributes() -> Callable[[CBFilterAfterSetFileAttributesEventParams], None]: ...
@on_after_set_file_attributes.setter
def on_after_set_file_attributes(event_hook: Callable[[CBFilterAfterSetFileAttributesEventParams], None]) -> None: ...

Remarks

This event fires after the attributes and/or times of the file or directory specified by FileName are changed.

Applications only need to handle this event if they've added a standard filter rule that includes the FS_CE_AFTER_SET_ATTRIBUTES flag.

The CreationTime, LastAccessTime, LastWriteTime, and ChangeTime parameters reflect the new time values, specified in UTC. A value of January 1, 1970 00:00:00 UTC indicates that the corresponding time value was not included in the request.

The Attributes parameter reflects the new attributes; please refer to Microsoft's File Attribute Constants article for attribute descriptions.

The Status parameter contains an NT status code that indicates the outcome of the operation; 0 indicates success. To convert this value to a Win32 error code, call the nt_status_to_win_32_error method. Please note that this event won't fire for failed requests unless the process_failed_requests property is enabled. Applications may change this parameter's value if they want a different NT status code to be returned.

The FileContext and HandleContext parameters are placeholders for application-defined data associated with the file and specific handle, respectively. Please refer to the Contexts topic for more information.

The ResultCode parameter will always be 0 when the event is fired. If the event cannot be handled in a "successful" manner for some reason (e.g., a resource isn't available, security checks failed, etc.), set it to a non-zero value to report an appropriate error. Please refer to the Error Reporting and Handling topic for more information.

This event is fired synchronously; please refer to the Event Types topic for more information.

Copyright (c) 2022 Callback Technologies, Inc. - All rights reserved.
CBFS Filter 2020 Python Edition - Version 20.0 [Build 8317]