IRAPISession::CeOpenDatabase

A version of this page is also available for

Windows Embedded CE 6.0 R3

4/8/2010

This method opens an existing database in the object store on a remote Windows Embedded CEā€“based device.

Note

This method has been deprecated. Use IRAPISession::CeOpenDatabaseEx instead.

Syntax

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

Parameters

  • poid
    [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 and use the lpszName to specify the database name. If the database is opened by name, the object identifer of the newly opened database is returned in the poid parameter*.*
  • 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. Subsequent calls to IRAPISession::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

    Current seek position is automatically incremented with each call to the IRAPISession::CeReadRecordProps method.

    0 (ZERO)

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

  • hwndNotify
    [in] Not supported; set to NULL.

Return Value

The handle to the open database indicates success. INVALID_HANDLE_VALUE indicates failure. To get extended error information, call IRAPISession::CeGetLastError and IRAPISession::CeRapiGetError. Possible values for IRAPISession::CeGetLastError 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 a database handle.

Remarks

Use the IRAPISession::CeCloseHandle function to close the handle returned by the IRAPISession::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.

Requirements

Header rapi2.h
Library ole32.lib, rapiuuid.lib
Windows Embedded CE Windows Embedded CE 6.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

IRAPISession
IRAPISession::CeCreateDatabase
IRAPISession::CeSeekDatabase
IRAPISession::CeReadRecordProps
IRAPISession::CeCloseHandle
IRAPISession::CeOpenDatabaseEx