Microsoft Windows CE 3.0  

CeOpenDatabaseEx

Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

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.

HANDLE CeOpenDatabaseEx(
PCEGUID
pceguid
,

PCEOID
poid
,
LPWSTR
lpszName
,

CEPROPID
propid
,

DWORD
dwFlags
,
CENOTIFYREQUEST *pRequest
hwndNotify
);

Parameters

pceguid
[in] Pointer to the CEGUIDthat contains the globally unique identifier of a mounted database. If pceguidpoints to a CEGUIDcreated with the CREATE_INVALIDGUIDmacro, then poidis 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/out] Pointer to the object identifier of the database to be opened. To open a database by name, set the value pointed to by poidto zero, set lpszNameto the database name, and set pceguidto 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 pceguidto specify the database if the value pointed to by poidis zero. If the value pointed to by poidis nonzero, lpszNameis ignored.
propid
[in] Property identifier of the sort key for the database. All subsequent calls to CeSeekDatabaseassume 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 CENOTIFYREQUESTstructure 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 GetLastErrorinclude 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 poidwas 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 CloseHandlefunction to close the handle returned by the CeOpenDatabaseExfunction.

Changes to Windows CE databases are committed after each individual call, not when opening and closing a database.

Note   Earlier versions (2.12 and prior) of Windows CE assigned OIDs to objects in other file systems, such as the FAT file system. These OIDs 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 OIDs and the object store is the only volume that can return an object identifier.

Requirements

Runs on Versions Defined in Include Link to
Windows CE OS 2.10 and later Windbase.h Winbase.h Fsdbase.lib
Note   This API is part of the complete Windows CE OS package as provided by Microsoft. The functionality of a particular platform is determined by the original equipment manufacturer (OEM) and some devices may not support this API.

See Also

CeCreateDatabaseEx, CeOpenDatabaseEx, CeReadRecordPropsEx, CeSeekDatabase, CloseHandle, GetLastError, CREATE_INVALIDGUID, CENOTIFICATION