CeOpenDatabase (RAPI)

Windows Mobile 6.5
A version of this page is also available for

This function opens an existing database in the object store on a remote Windows Embedded CE–based device.

This method has been deprecated. Use CeOpenDatabaseEx instead.

HANDLE CeOpenDatabase (
  PCEOID poid, 
  LPWSTR lpszName, 
  CEPROPID propid, 
  DWORD dwFlags, 
  HWND hwndNotify 


[in,out] 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 to receive the object identifer of the newly opened database when a database name is specified for lpszName.


[in] Pointer to the null-terminated string that contains the name of the database to be opened. This parameter is ignored if the value pointed to by poid is nonzero.


[in] Property identifier of the primary key for the sort order in which the database is to be traversed. All subsequent calls to CeSeekDatabase assume this sort order. This parameter can be zero if the sort order is not important.


[in] Specifies a bitmask of action flags. It is one of the following values.

Value Description


Current seek position is automatically incremented with each call to the CeReadRecordProps function.

0 (ZERO)

Current seek position is not incremented with each call to CeReadRecordProps.


[in] Not supported; set to NULL.

The handle to the open database indicates success. INVALID_HANDLE_VALUE indicates failure. To get extended error information, call CeGetLastError and CeRapiGetError. Possible values for CeGetLastError include the following:


A parameter was invalid.


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.


No memory was available to allocate a database handle.

Use the CeCloseHandle function to close the handle returned by the CeOpenDatabase function.

Opening and closing a Windows Embedded CE database does not cause any transactions to be committed. In other words, database transactions are not committed when the database is closed, they are committed after each individual call.

Windows Embedded CEWindows CE 3.0 and later
Windows MobilePocket PC 2000 and later, Smartphone 2002 and later