CeSetDatabaseInfoEx (RAPI)

Send Feedback

This function sets parameters for a database on a remote Microsoft® Windows® CE–based device. The database can exist in the device's object store or in a mounted database volume. The parameters that can be set include the name, type, and sort-order descriptions.

BOOL CeSetDatabaseInfoEx( 
  PCEGUID pceguid, 
  CEOID oidDbase,
  CEDBASEINFO * pNewInfo 
);

Parameters

  • pceguid
    [in] Pointer to the CEGUID that contains the globally unique identifier (GUID) of a mounted database.
  • oidDbase
    [in] Object identifier of the database for which parameters are to be set.
  • pNewInfo
    [in] Pointer to a CEDBASEINFO structure that contains new parameter information for the database. The wNumRecords member of the structure is not used.

Return Values

Nonzero indicates success. Zero indicates failure. To get extended error information, call CeGetLastError and CeRapiGetError. Possible values for CeGetLastError include the following:

  • ERROR_INVALID_PARAMETER
    A parameter was invalid.
  • ERROR_DISK_FULL
    The object store or mounted volume is full and any size changes required could not be accommodated. Changing sort orders can minimally change the size of the stored records.
  • ERROR_SHARING_VIOLATION
    The CeSetDatabaseInfoEx function tried to remove a sort order that is being used by a currently open database.

Remarks

Use CeSetDatabaseInfoEx to change the database parameters passed in while creating the database. Changing the sort order or compression of a database is a very expensive operation, possibly taking a few minutes. Before calling this function, warn the user that this is a lengthy process. For Windows CE 3.0 and later, the sort orders of a database cannot be changed while a handle to that database remains open.

Changing the compression of a database affects only new and modified records.

Note   Earlier versions of Windows CE assigned object identifiers to objects in other file systems, such as the file allocation table (FAT) file system. These object identifiers were guaranteed to be unique within a volume, but not across multiple volumes. Effective with version 3.0, only objects in the object store have valid, unique object identifiers and the object store is the only volume that can return an object identifier.

RAPI method calls that access databases will fail on devices running in restricted mode unless the database permissions are explicitly set to allow RAPI access. For more information, see RAPI Restricted Mode Security.

Requirements

Pocket PC: Pocket PC 2002 and later
Smartphone: Smartphone 2002 and later
OS Versions: Windows CE 3.0 and later
Header: Rapi.h
Library: Rapi.lib

See Also

Remote API Functions | CeCreateDatabaseEx | CEDBASEINFO | CeOidGetInfoEx

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.