Share via


CeOpenDatabase (RAPI)

This function opens an existing database. CeOpenDatabase (RAPI) is a remote application interface, which enables an application running on a desktop computer to make function calls on a Windows CE–based device.

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

Parameters

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

  • 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.

  • propid
    [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.

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

    Value Description
    CEDB_AUTOINCREMENT Causes the current seek position to be automatically incremented with each call to the CeReadRecordProps function.
    0 (ZERO) Current seek position is not incremented with each call to CeReadRecordProps.
  • hwndNotify
    [in] Handle to the window to which notification messages (DB_CEOID_*) will be posted if another thread modifies the specified database while you have it open. This parameter can be NULL if you do not need to receive notifications.

Return Values

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

  • ERROR_INVALID_PARAMETER
    A parameter was invalid.
  • ERROR_FILE_NOT_FOUND
    No database exists with the specified name. This value 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 a database handle.

Remarks

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

Unlike many other traditional databases, opening and closing a database does not imply any transactioning. In other words, the database is not committed at the closing — it is committed after each individual call.

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

Requirements

Runs On Versions Defined in Include Link to
Windows CE OS 1.01 and later Rapi.h    

See Also

CeCloseHandle (RAPI), CeCreateDatabase (RAPI), CeGetLastError, CeReadRecordProps, CeSeekDatabase, CeSeekDatabase (RAPI)

 Last updated on Tuesday, July 13, 2004

© 1992-2000 Microsoft Corporation. All rights reserved.