This function opens an existing database on any database volume, including mounted databases. A remote application interface (RAPI) version of this function exists, and it is also called CeOpenDatabaseEx.
At a Glance
Header file: | Windbase.h |
Windows CE versions: | 2.10 and later |
Syntax
HANDLE CeOpenDatabaseEx( PCEGUID pceguid, PCEOID poid,
LPWSTR lpszName, CEPROPID propid, DWORD dwFlags,
CENOTIFYREQUEST *pRequest hwndNotify );
Parameters
pceguid
[in] Pointer to the CEGUID that contains the globally unique identifier of a mounted database. If pceguid equals CREATE_INVALIDGUID, then poid is ignored, and the object store and all mounted databases are searched for a database whose name matches lpszName. The search is completed when the first match is located.
poid
[in] Pointer to the object identifier of the database to be opened. To open a database by name, set the value pointed to by poid to zero, set lpszName to the database name, and set pceguid to the database volume.
lpszName
[in] Long pointer to the null-terminated string that contains the name of the database to be opened. This is used along with pceguid to specify the database if the value pointed to by poid is zero. If the value pointed to by poid is nonzero, lpszName is ignored.
propid
[in] Property identifier of the primary sort key for the database. All subsequent calls to CeSeekDatabase assume this sort order. This parameter can be zero if the sort order is not important.
dwFlags
[in] Specifies an action flag. It is one of the following flags:
Value | Description |
CEDB_AUTOINCREMENT | Current seek position is automatically incremented with each call to CeReadRecordPropsEx. |
0 | Current seek position is not incremented with each call to CeReadRecordPropsEx. |
pRequest
[in] Pointer to a CENOTIFICATION structure that requests notifications be sent to an identified window. This parameter can be NULL if an application does not need to receive notifications.
Return Values
A handle to the open database indicates success. INVALID_HANDLE_VALUE indicates failure. To get extended error information, call GetLastError. Possible values for GetLastError include the following:
ERROR_INVALID_PARAMETER
A parameter was invalid.
ERROR_FILE_NOT_FOUND
No database exists with the specified name. This error code applies only if the value pointed to by poid was set to NULL, when the function was called.
ERROR_NOT_ENOUGH_MEMORY
No memory was available to allocate the database handle.
Remarks
An application must use the CloseHandle function to close the handle returned by the CeOpenDatabaseEx function.
Changes to Windows CE databases are committed after each individual call, not when opening and closing a database.
See Also
CeCreateDatabaseEx, CeReadRecordPropsEx, CeSeekDatabase, CREATE_INVALIDGUID