SetFileAttributes Method

Sets the attributes of a vault item.

Syntax

ANSI (Cross Platform)
int SetFileAttributes(const char* lpszFileName, int iAttributes);

Unicode (Windows)
INT SetFileAttributes(LPCWSTR lpszFileName, INT iAttributes);
- (void)setFileAttributes:(NSString*)fileName :(int)attributes;
#define MID_CBVAULT_SETFILEATTRIBUTES 54

CBFSVAULT_EXTERNAL int CBFSVAULT_CALL CBFSVault_CBVault_Do(void *lpObj, int methid, int cparam, void *param[], int cbparam[], int64 *lpllVal);

Remarks

This method sets the attributes of the vault item (file, directory, symbolic link, or alternate stream) specified by FileName.

The value passed for FileName must be a vault-local absolute path.

The Attributes parameter specifies the new attributes for the vault item, which should be constructed by OR'ing together one or more of the following values:

CBFSSTORAGE_FATTR_FILE0x00000001The entry is a file.

CBFSSTORAGE_FATTR_DIRECTORY0x00000002The entry is a directory.

CBFSSTORAGE_FATTR_DATA_STREAM0x00000004The entry is an alternate data stream.

CBFSSTORAGE_FATTR_COMPRESSED0x00000008The file or stream is compressed.

CBFSSTORAGE_FATTR_ENCRYPTED0x00000010The file or stream is encrypted.

CBFSSTORAGE_FATTR_SYMLINK0x00000020The entry is a symbolic link.

CBFSSTORAGE_FATTR_READONLY0x00000040The file is read-only.

This attribute is not used by CBFS Vault, but it can be set and retrieved.

CBFSSTORAGE_FATTR_ARCHIVE0x00000080The file requires archiving.

This attribute is not used by CBFS Vault, but it can be set and retrieved.

CBFSSTORAGE_FATTR_HIDDEN0x00000100The file is hidden.

This attribute is not used by CBFS Vault, but it can be set and retrieved.

CBFSSTORAGE_FATTR_SYSTEM0x00000200The file is a system file.

This attribute is not used by CBFS Vault, but it can be set and retrieved.

CBFSSTORAGE_FATTR_TEMPORARY0x00000400The file is temporary.

This attribute is not used by CBFS Vault, but it can be set and retrieved.

CBFSSTORAGE_FATTR_DELETE_ON_CLOSE0x00000800The file should be deleted when the last handle to the file is closed.

This attribute is currently not supported by CBFS Vault.

CBFSSTORAGE_FATTR_RESERVED_00x00001000Reserved.

CBFSSTORAGE_FATTR_RESERVED_10x00002000Reserved.

CBFSSTORAGE_FATTR_RESERVED_20x00004000Reserved.

CBFSSTORAGE_FATTR_RESERVED_30x00008000Reserved.

CBFSSTORAGE_FATTR_NO_USER_CHANGE0x0000F03FA mask which includes all attributes that cannot be changed.

Applications cannot use the SetFileAttributes method to directly change any of the following attributes: FILE, DIRECTORY, DATA_STREAM, COMPRESSED, ENCRYPTED, SYMLINK, RESERVED_0, RESERVED_1, RESERVED_2, RESERVED_3.

CBFSSTORAGE_FATTR_USER_DEFINED0x7FF00000A mask for application-defined attributes.

Applications can use the SetFileAttributes method to set custom attributes, so long as their values are covered by this mask.

CBFSSTORAGE_FATTR_ANY_FILE0x7FFFFFFFA mask which includes any and all attributes.

Note: This method can only be called when Active is true, and cannot be called within events.

Error Handling (C++)

This method returns a result code; 0 indicates success, while a non-zero error code indicates that this method encountered an error during its execution. If an error occurs, the GetLastError() method can be called to retrieve the associated error message. (Note: This method's result code can also be obtained by calling the GetLastErrorCode() method after it returns.)

Copyright (c) 2022 Callback Technologies, Inc. - All rights reserved.
CBFS Vault 2020 C++ Edition - Version 20.0 [Build 8347]