CeSetFileAttributes (RAPI) (Windows CE 5.0)

Send Feedback

This function sets a file's attributes.

CeSetFileAttributes is a remote application programming interface (RAPI), which enables an application running on a desktop computer to make function calls on a Windows CE–based device.

BOOLCeSetFileAttributes(LPCWSTRlpFileName, DWORDdwFileAttributes);

Parameters

  • lpFileName
    [in] Long pointer to a null-terminated string that specifies the name of the file whose attributes are to be set.

    There is a default string size limit for paths of MAX_PATH characters. This limit is related to how the CeSetFileAttributes function parses paths. An application can transcend this limit and send in paths longer than MAX_PATH characters by prepending \\?\ to the path. However, each component in the path cannot be more than MAX_PATH characters long. The \\?\ tells the function to turn off path parsing; it lets paths longer than MAX_PATH be used with CeSetFileAttributes. However, each component in the path cannot be more than MAX_PATH characters long. This also works with Universal Naming Convention (UNC) names. The \\?\ is ignored as part of the path. For example, \\?\C:\myworld\private is seen as C:\myworld\private.

  • dwFileAttributes
    [in] Specifies the file attributes to set for the file. This parameter can be a combination of the following values. However, all other values override FILE_ATTRIBUTE_NORMAL.

    Value Description
    FILE_ATTRIBUTE_ARCHIVE The file is an archive file. Applications use this attribute to mark files for backup or removal.
    FILE_ATTRIBUTE_HIDDEN The file is hidden. It is not included in an ordinary directory listing.
    FILE_ATTRIBUTE_NORMAL The file has no other attributes set. This attribute is valid only if used alone.
    FILE_ATTRIBUTE_READONLY The file is read-only. Applications can read the file but cannot write to it or delete it.
    FILE_ATTRIBUTE_SYSTEM The file is part of the operating system or is used exclusively by it.
    FILE_ATTRIBUTE_TEMPORARY The file is being used for temporary storage. File systems attempt to keep all of the data in memory for quicker access rather than flushing the data back to mass storage. A temporary file should be deleted by the application as soon as it is no longer needed.

Return Values

Nonzero indicates success. Zero indicates failure. To determine if a function failed because of RAPI errors, call CeRapiGetError. To determine if a function failed because of non-RAPI errors, call CeGetLastError.

Remarks

The CeSetFileAttributes function does not work on the ROM file system. Inherently, this call is dependent on the file system support provided by a file system driver.

An application cannot change the attributes of a directory in the RAM file system.

The following table describes how to set the attributes in the RAM file system that cannot be set using CeSetFileAttributes.

Attribute How to Set
FILE_ATTRIBUTE_COMPRESSED To set a file's compression state, use the DeviceIoControl function with the FSCTL_SET_COMPRESSION operation.
FILE_ATTRIBUTE_DIRECTORY Files cannot be converted into directories. To create a directory, use the CreateDirectory function.
FILE_ATTRIBUTE_REPARSE_POINT To associate a reparse point with a file, use the DeviceIoControl function with the FSCTL_SET_REPARSE_POINT operation.
FILE_ATTRIBUTE_SPARSE_FILE To set a file's sparse attribute, use the DeviceIoControl function with the FSCTL_SET_SPARSE operation.

Not all file systems support all attributes.

When writing applications for Windows CE 1.0 and 1.01, use the PegSetFileAttributes function.

Requirements

OS Versions: Windows CE 2.0 and later.
Header: Rapi.h.
Link Library: Rapi.lib.

See Also

RAPI Functions | CeGetLastError | CeRapiGetError | CreateDirectory | DeviceIoControl | SetFileAttributes

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.