Access Event
Fires when the OS needs to check file access permissions.
Syntax
type TAccessEvent = procedure ( Sender: TObject; const Path: String; Mask: Integer; var Result: Integer ) of Object;
property OnAccess: TAccessEvent read FOnAccess write FOnAccess;
Remarks
Windows:
This event fires when the OS needs to know whether the file or directory specified in Path can be deleted. For this, the Mask parameter is set to 2 (W_OK).
The application must return 0 in the Result parameter to indicate that deletion is permitted, or an error code otherwise.
Linux:
This event fires when the OS needs to check access permissions of the file or directory specified in Path. Specifically, the event fires when a process uses the access() system call.
The application must return 0 in the Result parameter to indicate that access, requested by the Mask parameter is permitted, or -EACCES to indicate that access is denied.
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 negative error code value (e.g. -ENOENT to indicate that the file does not exist) to report an appropriate error. Please refer to the Error Reporting and Handling topic for more information.