ReadRegistryFromOEM (Windows Embedded CE 6.0)
1/5/2010
This function reads a registry file into RAM from persistent storage as defined by the OEM. This function is callable from kernel mode only.
Syntax
DWORD ReadRegistryFromOEM(
DWORD dwFlags,
LPBYTE lpData,
DWORD cbData
);
Parameters
dwFlags
[in] Read options specified by the OS.REG_READ_BYTES_START indicates reading must start from the beginning of the registry file.
lpData
[in] Pointer to a buffer allocated by the OS.You must load the buffer with registry bytes up to a maximum of cbData.
cbData
[in] Size, in bytes, of the buffer to which lpData points.This value is passed in by the OS.
Return Value
Returns the number of bytes added to lpData.
If 0 is returned, the end of file (EOF) has been reached.
If -1 is returned, then your function's read functionality has faulted and the OS should load the default registry.
Remarks
The OS exposes a pReadRegistryFromOEM global variable that is available in the OAL. To support restoring the registry from persistent storage, implement the ReadRegistryFromOEM function and assign the address of the function to pReadRegistryFromOEM.
During registry initialization, the OS checks for a valid pReadRegistryFromOEM. If it is valid, the OS continues to call pReadRegistryFromOEM to retrieve bytes until pReadRegistryFromOEM returns 0, for end of file, or -1.
If there are severe problems or conditions under which the initialization cannot continue, you can implement this function so it does not return. For example, you can inform the user of the problem and possible solutions.
Because the OS is running a single thread at this stage of initialization, no other OS activity occurs unless this function returns.
The WriteRegistryToOEM function and ReadRegistryFromOEM mechanism is only supported by the object store-based registry. To save and restore data in the hive-based registry, see the RegSaveKey and RegReplaceKey functions.
The data file saved by the function RegCopyFile cannot be imported directly by ReadRegistryFromOEM. Use RegCopyFile to save the data to be restored by the function RegRestoreFile, or use WriteRegistryToOEM to save the data to be imported by ReadRegistryFromOEM.
Requirements
Header | pkfuncs.h |
Library | OEMMain.lib or OEMMain_StaticKITL.lib |
Windows Embedded CE | Windows CE 2.10 and later |
See Also
Reference
Optional OAL Functions
pReadRegistryFromOEM
WriteRegistryToOEM
Other Resources
Kernel Mode APIs
RegSaveKey
RegReplaceKey
RegCopyFile
RegRestoreFile
Persisting Data with the RAM-Based Registry